diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/appveyor.yml valentina-0.7.41+1062+202012040912~ubuntu20.10.1/appveyor.yml --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/appveyor.yml 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/appveyor.yml 2020-12-04 09:11:51.000000000 +0000 @@ -258,7 +258,7 @@ package: valentina-win_auto-upload publish: true override: true - version: 0.7.40 + version: 0.7.41 on: DEPLOY: true artifact: valentina-win-$(QT_VERSION)-$(APPVEYOR_REPO_BRANCH)-$(APPVEYOR_REPO_COMMIT) diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/ChangeLog.txt valentina-0.7.41+1062+202012040912~ubuntu20.10.1/ChangeLog.txt --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/ChangeLog.txt 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/ChangeLog.txt 2020-12-04 09:11:51.000000000 +0000 @@ -1,3 +1,11 @@ +# Version 0.7.41 Dec 4, 2020 +- Bug fixes. +- Improve canceling nesting. +- Fix incorrect nesting status for valid cases. +- Improve crossing check for the layout algorithm. +- Fix crash after creating an elliptical arc. +- New option Reset label position. + # Version 0.7.40 Nov 23, 2020 - New function Warning. - [smart-pattern/valentina#80] Allow insertion of multiple nodes. diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/debian/changelog valentina-0.7.41+1062+202012040912~ubuntu20.10.1/debian/changelog --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/debian/changelog 2020-11-23 09:38:11.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/debian/changelog 2020-12-04 09:12:39.000000000 +0000 @@ -1,11 +1,11 @@ -valentina (0.7.40+1041+202011230938~ubuntu20.10.1) groovy; urgency=low +valentina (0.7.41+1062+202012040912~ubuntu20.10.1) groovy; urgency=low * Auto build. - -- Roman Mon, 23 Nov 2020 09:38:11 +0000 + -- Roman Fri, 04 Dec 2020 09:12:39 +0000 -valentina (0.7.40) trusty; urgency=low +valentina (0.7.41) trusty; urgency=low * Auto build. - -- dismine Mon, 23 Nov 2020 16:30:00 +0300 + -- dismine Fri, 4 Dec 2020 16:30:00 +0300 diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/debian/git-build-recipe.manifest valentina-0.7.41+1062+202012040912~ubuntu20.10.1/debian/git-build-recipe.manifest --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/debian/git-build-recipe.manifest 2020-11-23 09:38:11.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/debian/git-build-recipe.manifest 2020-12-04 09:12:39.000000000 +0000 @@ -1,3 +1,3 @@ -# git-build-recipe format 0.4 deb-version {debupstream}+1041+202011230938 -lp:valentina git-commit:76f195121eaf895256c0daf598290e4aa0c9a6e2 -merge develop lp:~dismine/valentina/+git/debian_test git-commit:a5d93baafe57ca3b1120f56f1f7f9f5a6a027da7 +# git-build-recipe format 0.4 deb-version {debupstream}+1062+202012040912 +lp:valentina git-commit:700209736295535b7be24e9974238b1aa5f3309b +merge develop lp:~dismine/valentina/+git/debian_test git-commit:b2246ca4e352a67bd52935276cb268015c917e68 diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/debian/changelog valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/debian/changelog --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/debian/changelog 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/debian/changelog 2020-12-04 09:11:51.000000000 +0000 @@ -1,5 +1,5 @@ -valentina (0.7.40) trusty; urgency=low +valentina (0.7.41) trusty; urgency=low * Auto build. - -- dismine Mon, 23 Nov 2020 16:30:00 +0300 + -- dismine Fri, 4 Dec 2020 16:30:00 +0300 diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/macx/tape/Info.plist valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/macx/tape/Info.plist --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/macx/tape/Info.plist 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/macx/tape/Info.plist 2020-12-04 09:11:51.000000000 +0000 @@ -19,9 +19,9 @@ CFBundleIdentifier io.bitbucket.valentinaproject.@EXECUTABLE@ CFBundleShortVersionString - 0.7.40 + 0.7.41 CFBundleVersion - 0.7.40.0 + 0.7.41.0 CFBundleInfoDictionaryVersion 6.0 CFBundleDocumentTypes diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/macx/valentina/Info.plist valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/macx/valentina/Info.plist --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/macx/valentina/Info.plist 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/macx/valentina/Info.plist 2020-12-04 09:11:51.000000000 +0000 @@ -19,9 +19,9 @@ CFBundleIdentifier io.bitbucket.valentinaproject.@EXECUTABLE@ CFBundleShortVersionString - 0.7.40 + 0.7.41 CFBundleVersion - 0.7.40.0 + 0.7.41.0 CFBundleInfoDictionaryVersion 6.0 CFBundleDocumentTypes diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/OBS_debian/debian.changelog valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/OBS_debian/debian.changelog --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/OBS_debian/debian.changelog 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/OBS_debian/debian.changelog 2020-12-04 09:11:51.000000000 +0000 @@ -1,5 +1,5 @@ -valentina (0.7.40) trusty; urgency=low +valentina (0.7.41) trusty; urgency=low * Auto build. - -- dismine Mon, 23 Nov 2020 16:30:00 +0300 + -- dismine Fri, 4 Dec 2020 16:30:00 +0300 diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/rpm/_service valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/rpm/_service --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/rpm/_service 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/rpm/_service 2020-12-04 09:11:51.000000000 +0000 @@ -1,7 +1,7 @@ git://github.com/dismine/Valentina_git.git - 0.7.40 + 0.7.41 valentina git .git diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/rpm/valentina.spec valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/rpm/valentina.spec --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/rpm/valentina.spec 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/rpm/valentina.spec 2020-12-04 09:11:51.000000000 +0000 @@ -91,7 +91,7 @@ Requires: poppler-utils %endif -Version: 0.7.40 +Version: 0.7.41 Release: 0 URL: https://gitlab.com/smart-pattern/valentina License: GPL-3.0+ diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/valentina.dsc valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/valentina.dsc --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/dist/valentina.dsc 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/dist/valentina.dsc 2020-12-04 09:11:51.000000000 +0000 @@ -2,7 +2,7 @@ Source: valentina Binary: valentina Architecture: i386 amd64 -Version: 0.7.40 +Version: 0.7.41 Maintainer: Roman Telezhynskyi Homepage: https://valentinaproject.bitbucket.io Standards-Version: 3.9.5 @@ -18,8 +18,8 @@ Package-List: valentina deb graphics optional Checksums-Sha1: - 581eb1bf36b4ab7126b5983d809130f15396859e 24838101 valentina_0.7.40.tar + 581eb1bf36b4ab7126b5983d809130f15396859e 24838101 valentina_0.7.41.tar Checksums-Sha256: - 9b156c7120a69b90373efb8ca9998c3e0563a60ad337210166cfd41b00b0f13c 24838101 valentina_0.7.40.tar + 9b156c7120a69b90373efb8ca9998c3e0563a60ad337210166cfd41b00b0f13c 24838101 valentina_0.7.41.tar Files: - 95677e29d3a59cf5b064f7be236a4b78 24838101 valentina_0.7.40.tar + 95677e29d3a59cf5b064f7be236a4b78 24838101 valentina_0.7.41.tar diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/bintray.json valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/bintray.json --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/bintray.json 2020-11-23 09:37:46.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/bintray.json 2020-12-04 09:11:51.000000000 +0000 @@ -17,8 +17,8 @@ "version": { "name": "0.7.40", "desc": "Test branch release", - "released": "2020-11-23", - "vcs_tag": "v0.7.40", + "released": "2020-12-4", + "vcs_tag": "v0.7.41", "gpgSign": false }, diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_cs_CZ.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_cs_CZ.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_cs_CZ.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_cs_CZ.ts 2020-12-04 09:12:10.000000000 +0000 @@ -3360,22 +3360,10 @@ DialogInsertNode - Insert node - Vložit uzel - - - Item: - Položka: - - Piece: Díl: - Uknown - Neznámý - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. Seznam dílů je prázdný. Nejprve, prosím, vytvořte alespoň jeden díl pro nynější střih. @@ -3385,7 +3373,7 @@ Delete - Smazat + Smazat @@ -7662,6 +7650,10 @@ %1 update is available! Je dostupná aktualizace %1! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -9018,10 +9010,6 @@ Nástroj Vložit uzel - Select an item to insert - Vyberte položku k vložení - - Open Tape app for creating or editing measurements file Otevřít program Tape pro vytvoření nebo upravení souboru s rozměry @@ -13597,6 +13585,10 @@ Show label Ukázat popis + + Restore label position + + VException @@ -14680,7 +14672,7 @@ Point at intersection of arc and line - Bod v průsečíku oblouku a čáry + Bod v průsečíku oblouku a čáry Tool to make point from x & y of two other points @@ -15142,6 +15134,10 @@ Alias2: + + Point of intersection circle and segment + Průsečík kruhu a části + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_de_DE.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_de_DE.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_de_DE.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_de_DE.ts 2020-12-04 09:12:11.000000000 +0000 @@ -3360,22 +3360,10 @@ DialogInsertNode - Insert node - Knoten einfügen - - - Item: - Item: - - Piece: Stück: - Uknown - Unbekannt - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. Die Liste an Schnittteilen ist leer. Bitte erstellen Sie erst mindestens ein Schnittteile für das aktuelle Schnittteil. @@ -3385,7 +3373,7 @@ Delete - + Entfernen @@ -7659,6 +7647,10 @@ %1 update is available! %1 Update ist verfügbar! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -9015,10 +9007,6 @@ Knoten einfügen Werkzeug - Select an item to insert - Wählen Sie ein Item zum Einfügen aus - - Open Tape app for creating or editing measurements file Öffnen der Tape App um ein Maß-Datei anzulegen oder zu ändern @@ -13591,6 +13579,10 @@ Show label + + Restore label position + + VException @@ -14646,7 +14638,7 @@ Point at intersection of arc and line - Laufender Schnittpunkt auf Kreisbogen + Laufender Schnittpunkt auf Kreisbogen Tool to make point from x & y of two other points @@ -15100,6 +15092,10 @@ Alias2: + + Point of intersection circle and segment + Punkt am Schnittpunkt von Kreis und Abschnitt + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_el_GR.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_el_GR.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_el_GR.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_el_GR.ts 2020-12-04 09:12:11.000000000 +0000 @@ -3308,22 +3308,10 @@ DialogInsertNode - Insert node - Εισάγετε κόμβο - - - Item: - Αντικείμενο: - - Piece: Κομμάτι: - Uknown - Άγνωστο - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. @@ -3333,7 +3321,7 @@ Delete - Διαγραφή + Διαγραφή @@ -7563,6 +7551,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -13132,6 +13124,10 @@ Show label + + Restore label position + + VException @@ -14199,7 +14195,7 @@ Point at intersection of arc and line - Σημείο στην τομή τόξου και γραμμής + Σημείο στην τομή τόξου και γραμμής Tool to make point from x & y of two other points @@ -14657,6 +14653,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_en_CA.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_en_CA.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_en_CA.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_en_CA.ts 2020-12-04 09:12:11.000000000 +0000 @@ -3360,22 +3360,10 @@ DialogInsertNode - Insert node - Insert node - - - Item: - Item: - - Piece: Piece: - Uknown - Uknown - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. @@ -3385,7 +3373,7 @@ Delete - Delete + Delete @@ -7658,6 +7646,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -9014,10 +9006,6 @@ Insert node tool - Select an item to insert - Select an item to insert - - Open Tape app for creating or editing measurements file Open Tape app for creating or editing measurements file @@ -13588,6 +13576,10 @@ Show label + + Restore label position + + VException @@ -14671,7 +14663,7 @@ Point at intersection of arc and line - Point at intersection of arc and line + Point at intersection of arc and line Tool to make point from x & y of two other points @@ -15133,6 +15125,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_en_IN.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_en_IN.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_en_IN.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_en_IN.ts 2020-12-04 09:12:11.000000000 +0000 @@ -3360,22 +3360,10 @@ DialogInsertNode - Insert node - Insert node - - - Item: - Item: - - Piece: Piece: - Uknown - Uknown - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. @@ -3385,7 +3373,7 @@ Delete - Delete + Delete @@ -7658,6 +7646,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -9014,10 +9006,6 @@ Insert node tool - Select an item to insert - Select an item to insert - - Open Tape app for creating or editing measurements file Open Tape app for creating or editing measurements file @@ -13588,6 +13576,10 @@ Show label + + Restore label position + + VException @@ -14671,7 +14663,7 @@ Point at intersection of arc and line - Point at intersection of arc and line + Point at intersection of arc and line Tool to make point from x & y of two other points @@ -15133,6 +15125,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_en_US.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_en_US.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_en_US.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_en_US.ts 2020-12-04 09:12:11.000000000 +0000 @@ -3360,22 +3360,10 @@ DialogInsertNode - Insert node - Insert node - - - Item: - Item: - - Piece: Piece: - Uknown - Uknown - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. @@ -3385,7 +3373,7 @@ Delete - Delete + Delete @@ -7658,6 +7646,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -9014,10 +9006,6 @@ Insert node tool - Select an item to insert - Select an item to insert - - Open Tape app for creating or editing measurements file Open Tape app for creating or editing measurements file @@ -13588,6 +13576,10 @@ Show label + + Restore label position + + VException @@ -14671,7 +14663,7 @@ Point at intersection of arc and line - Point at intersection of arc and line + Point at intersection of arc and line Tool to make point from x & y of two other points @@ -15133,6 +15125,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_es_ES.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_es_ES.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_es_ES.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_es_ES.ts 2020-12-04 09:12:11.000000000 +0000 @@ -3360,22 +3360,10 @@ DialogInsertNode - Insert node - Inserte nodo - - - Item: - Elemento: - - Piece: Pieza: - Uknown - Desconocido - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. La lista de piezas esta vacía. Por favor, primero cree al menos una pieza para el actual patrón de piezas. @@ -3385,7 +3373,7 @@ Delete - + Borrar @@ -7659,6 +7647,10 @@ %1 update is available! ¡%1 actualización esta disponible! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -9016,10 +9008,6 @@ Insertar herramienta nodo - Select an item to insert - Seleccionar un elemento para insertar - - Open Tape app for creating or editing measurements file Abrir aplicación Tape para crear o editar archivo de medidas @@ -13595,6 +13583,10 @@ Show label Mostrar estiqueta + + Restore label position + + VException @@ -14678,7 +14670,7 @@ Point at intersection of arc and line - Punto de intersección del arco y la línea + Punto de intersección del arco y la línea Tool to make point from x & y of two other points @@ -15140,6 +15132,10 @@ Alias2: + + Point of intersection circle and segment + Punto de intersección circulo y segmento + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_fi_FI.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_fi_FI.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_fi_FI.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_fi_FI.ts 2020-12-04 09:12:12.000000000 +0000 @@ -2957,7 +2957,7 @@ Delete - Poista + Poista @@ -6891,6 +6891,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -12089,6 +12093,10 @@ Show label + + Restore label position + + VException @@ -13105,7 +13113,7 @@ Point at intersection of arc and line - Kaaren ja viivan leikkauspiste + Kaaren ja viivan leikkauspiste Tool to make point from x & y of two other points @@ -13507,6 +13515,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_fr_FR.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_fr_FR.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_fr_FR.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_fr_FR.ts 2020-12-04 09:12:14.000000000 +0000 @@ -3360,18 +3360,10 @@ DialogInsertNode - Insert node - Insérer un noeud - - Piece: Pièce: - Uknown - Inconnu - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. @@ -3381,7 +3373,7 @@ Delete - + Effacer @@ -7651,6 +7643,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -13551,6 +13547,10 @@ Show label + + Restore label position + + VException @@ -14626,7 +14626,7 @@ Point at intersection of arc and line - Point à l'intersection d'un arc et d'une ligne + Point à l'intersection d'un arc et d'une ligne Tool to make point from x & y of two other points @@ -15084,6 +15084,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_he_IL.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_he_IL.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_he_IL.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_he_IL.ts 2020-12-04 09:12:14.000000000 +0000 @@ -6021,6 +6021,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -10822,6 +10826,10 @@ Show label + + Restore label position + + VException @@ -11786,10 +11794,6 @@ - Point at intersection of arc and line - - - Tool to make point from x & y of two other points @@ -12177,6 +12181,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_id_ID.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_id_ID.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_id_ID.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_id_ID.ts 2020-12-04 09:12:14.000000000 +0000 @@ -6358,6 +6358,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -11206,6 +11210,10 @@ Show label + + Restore label position + + VException @@ -12182,10 +12190,6 @@ - Point at intersection of arc and line - - - Tool to make point from x & y of two other points @@ -12573,6 +12577,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_it_IT.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_it_IT.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_it_IT.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_it_IT.ts 2020-12-04 09:12:15.000000000 +0000 @@ -3352,22 +3352,10 @@ DialogInsertNode - Insert node - Inserisci nodo - - - Item: - Strumento: - - Piece: Pezzo: - Uknown - Sconosciuto - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. La lista di pezzi è vuota. Per favore, creare almeno un pezzo per questo pezzo di modello. @@ -3377,7 +3365,7 @@ Delete - Elimina + Elimina @@ -7652,6 +7640,10 @@ %1 update is available! %1 un aggiornamento è disponibile! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -9004,10 +8996,6 @@ Inserisci nodo - Select an item to insert - Seleziona un oggetto da inserire - - Open Tape app for creating or editing measurements file Apri Tape per creare o modificare un file di misure @@ -13504,6 +13492,10 @@ Show label Mostra etichetta + + Restore label position + + VException @@ -14583,7 +14575,7 @@ Point at intersection of arc and line - Punto di intersezione tra arco e linea + Punto di intersezione tra arco e linea Tool to make point from x & y of two other points @@ -15037,6 +15029,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_nl_NL.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_nl_NL.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_nl_NL.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_nl_NL.ts 2020-12-04 09:12:15.000000000 +0000 @@ -3360,32 +3360,20 @@ DialogInsertNode - Insert node - Voeg knooppunt in - - - Item: - Item: - - Piece: Onderdeel: - Uknown - Onbekend - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. De lijst van patroondelen is leeg. Gelieve ten minste één patroondeel aan te maken voor het huidig patroon. Insert nodes - + Knooppunt invoegen Delete - + Verwijder @@ -4749,7 +4737,7 @@ untitled - zonder titel + naamloos Path: @@ -7660,6 +7648,10 @@ %1 update is available! %1 bijwerking is beschikbaar! + + New %1 test version is now available. Would you like to download it now? + Nieuwe %1 test versie is beschikbaar. Wens je die nu te downloaden? + FvUpdater @@ -8262,7 +8254,7 @@ untitled.val - zonder titel.val + naamloos.val The pattern has been modified. @@ -9015,10 +9007,6 @@ Voeg knooppunt toe - Select an item to insert - Selecteer een item om in te voegen - - Open Tape app for creating or editing measurements file Open de Tape app om een matenbestand te wijzigen of aan te maken @@ -10993,7 +10981,7 @@ untitled %1 - zonder titel %1 + naamloos %1 This file already opened in another window. @@ -11065,7 +11053,7 @@ untitled - zonder titel + naamloos <Empty> @@ -13594,6 +13582,10 @@ Show label Vertoon label + + Restore label position + + VException @@ -14677,7 +14669,7 @@ Point at intersection of arc and line - Kruispunt van boog en lijn + Kruispunt van boog en lijn Tool to make point from x & y of two other points @@ -15139,6 +15131,10 @@ Alias2: Alias2: + + Point of intersection circle and segment + Kruispunt van cirkel en segment + VToolPointFromArcAndTangent @@ -17181,7 +17177,7 @@ untitled.vwm - untitled.vwm + naamloos.vwm Confirm format rewriting diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_pl_PL.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_pl_PL.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_pl_PL.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_pl_PL.ts 2020-12-04 09:12:16.000000000 +0000 @@ -3148,10 +3148,6 @@ - Uknown - Nieznany - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. @@ -3161,7 +3157,7 @@ Delete - Usuń + Usuń @@ -6969,6 +6965,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -12254,6 +12254,10 @@ Show label + + Restore label position + + VException @@ -13257,10 +13261,6 @@ Dodaj punkt prostopadły - Point at intersection of arc and line - - - Tool to make point from x & y of two other points @@ -13660,6 +13660,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent @@ -15264,27 +15268,27 @@ Select all - + Zaznaczono wszystko Select none - + Zaznaczenie jest puste select all details - + wybrano wszystkie szczegóły select none details - + nie wybrano szczegółów Invert selection - + Odwróć zaznaczenie invert selection - + Odwróć zaznaczenie Hide not in layout @@ -15655,7 +15659,19 @@ INFO: - + INFORMACJA: + + + Warning. + Ostrzeżenie. + + + Critical error. + Błąd krytyczny. + + + Fatal error. + Błąd krytyczny. Information. @@ -15663,15 +15679,15 @@ Warning - + Ostrzeżenie Critical error - + Błąd krytyczny Fatal error - + Błąd krytyczny Information @@ -15698,7 +15714,19 @@ INFO: - + INFORMACJA: + + + Warning. + Ostrzeżenie. + + + Critical error. + Błąd krytyczny. + + + Fatal error. + Błąd krytyczny. Information. @@ -15706,15 +15734,15 @@ Warning - + Ostrzeżenie Critical error - + Błąd krytyczny Fatal error - + Błąd krytyczny Information diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_pt_BR.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_pt_BR.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_pt_BR.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_pt_BR.ts 2020-12-04 09:12:16.000000000 +0000 @@ -3360,22 +3360,10 @@ DialogInsertNode - Insert node - Inserir nó - - - Item: - Item: - - Piece: Peça: - Uknown - Desconhecido - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. @@ -3385,7 +3373,7 @@ Delete - Excluir + Excluir @@ -7652,6 +7640,10 @@ %1 update is available! %1 atualização está disponível! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -9008,10 +9000,6 @@ Inserir ferramenta de nó - Select an item to insert - Selecione um item para inserir - - Open Tape app for creating or editing measurements file Abrir aplicativo Tape para criar ou editar arquivos de medidas @@ -13519,6 +13507,10 @@ Show label Mostrar rótulo + + Restore label position + + VException @@ -14602,7 +14594,7 @@ Point at intersection of arc and line - Ponto de interseção entre arco e linha + Ponto de interseção entre arco e linha Tool to make point from x & y of two other points @@ -15064,6 +15056,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_ro_RO.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_ro_RO.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_ro_RO.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_ro_RO.ts 2020-12-04 09:12:16.000000000 +0000 @@ -3126,7 +3126,7 @@ Delete - Șterge + Șterge @@ -6946,6 +6946,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -11971,6 +11975,10 @@ Show label + + Restore label position + + VException @@ -12955,10 +12963,6 @@ Grade de unghi suplimentare - Point at intersection of arc and line - - - Tool to make point from x & y of two other points @@ -13354,6 +13358,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_ru_RU.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_ru_RU.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_ru_RU.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_ru_RU.ts 2020-12-04 09:12:16.000000000 +0000 @@ -3360,22 +3360,10 @@ DialogInsertNode - Insert node - Вставить узел - - - Item: - Объект: - - Piece: Деталь: - Uknown - Неизвестное - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. Список пуст. Пожалуйста, создайте хотя бы одну фигуру для текущей детали выкройки. @@ -3385,7 +3373,7 @@ Delete - Удалить + Удалить @@ -7662,6 +7650,10 @@ %1 update is available! %1 обновление доступно! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -8878,7 +8870,7 @@ The measurements file <br/><br/> <b>%1</b> <br/><br/> could not be found. Do you want to update the file location? - Файл меток <br/><br/> <b>%1</b> <br/><br/> не найден. Вы хотите обновить данные о местоположении файла? + Файл мерок <br/><br/> <b>%1</b> <br/><br/> не найден. Вы хотите обновить данные о местоположении файла? Flipping objects by line @@ -9017,10 +9009,6 @@ Инструмент Вставить узел - Select an item to insert - Выберите объект для вставки - - Open Tape app for creating or editing measurements file Открыть программу Tape для создания или редактирования файла мерок @@ -13596,6 +13584,10 @@ Show label Показать метку + + Restore label position + + VException @@ -14679,7 +14671,7 @@ Point at intersection of arc and line - Точка на пересечении дуги и линии + Точка на пересечении дуги и линии Tool to make point from x & y of two other points @@ -15141,6 +15133,10 @@ Alias2: Псевдоним 2: + + Point of intersection circle and segment + Точка пересечения окружности и отрезка + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina.ts 2020-12-04 09:12:10.000000000 +0000 @@ -7854,6 +7854,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -14005,6 +14009,10 @@ Show label + + Restore label position + + VException @@ -15106,7 +15114,7 @@ Point at intersection of arc and line - Point at intersection of arc and line + Point at intersection of arc and line Tool to make point from x & y of two other points @@ -15568,6 +15576,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_uk_UA.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_uk_UA.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_uk_UA.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_uk_UA.ts 2020-12-04 09:12:17.000000000 +0000 @@ -3360,22 +3360,10 @@ DialogInsertNode - Insert node - Вставити вузол - - - Item: - Обєкт: - - Piece: Деталь: - Uknown - Невідоме - - The list of pieces is empty. Please, first create at least one piece for current pattern piece. @@ -3385,7 +3373,7 @@ Delete - Видалити + Видалити @@ -7660,6 +7648,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -9015,10 +9007,6 @@ Інструмент вставка вузла - Select an item to insert - Виберіть обєкт для вставки - - Open Tape app for creating or editing measurements file Відкрити програму Tape для створення чи редагування файлу мірок @@ -13587,6 +13575,10 @@ Show label + + Restore label position + + VException @@ -14670,7 +14662,7 @@ Point at intersection of arc and line - Точка на перетині дуги та лінії + Точка на перетині дуги та лінії Tool to make point from x & y of two other points @@ -15132,6 +15124,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_zh_CN.ts valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_zh_CN.ts --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/share/translations/valentina_zh_CN.ts 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/share/translations/valentina_zh_CN.ts 2020-12-04 09:12:17.000000000 +0000 @@ -6139,6 +6139,10 @@ %1 update is available! + + New %1 test version is now available. Would you like to download it now? + + FvUpdater @@ -11035,6 +11039,10 @@ Show label + + Restore label position + + VException @@ -11987,10 +11995,6 @@ - Point at intersection of arc and line - - - Tool to make point from x & y of two other points @@ -12386,6 +12390,10 @@ Alias2: + + Point of intersection circle and segment + + VToolPointFromArcAndTangent diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/app/valentina/core/vtooloptionspropertybrowser.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/app/valentina/core/vtooloptionspropertybrowser.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/app/valentina/core/vtooloptionspropertybrowser.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/app/valentina/core/vtooloptionspropertybrowser.cpp 2020-12-04 09:12:21.000000000 +0000 @@ -2473,6 +2473,9 @@ switch (PropertiesList().indexOf(id)) { + case 0: // AttrName + Q_UNREACHABLE();//The attribute is read only + break; case 40://AttrRadius1 SetFormulaRadius1(property); break; @@ -2749,7 +2752,7 @@ { auto *i = qgraphicsitem_cast(item); i->ShowVisualization(true); - formView->setTitle(tr("Point at intersection of arc and line")); + formView->setTitle(tr("Point of intersection circle and segment")); AddPropertyObjectName(i, tr("Point label:")); AddPropertyParentPointName(i->ArcCenterPointName(), tr("Center of arc:"), AttrCenter); @@ -3067,6 +3070,7 @@ i->ShowVisualization(true); formView->setTitle(tr("Elliptical arc")); + AddPropertyObjectName(i, tr("Name:"), true); AddPropertyParentPointName(i->CenterPointName(), tr("Center point:"), AttrCenter); AddPropertyFormula(tr("Radius:"), i->GetFormulaRadius1(), AttrRadius1); AddPropertyFormula(tr("Radius:"), i->GetFormulaRadius2(), AttrRadius2); diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/app/valentina/mainwindow.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/app/valentina/mainwindow.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/app/valentina/mainwindow.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/app/valentina/mainwindow.cpp 2020-12-04 09:12:21.000000000 +0000 @@ -1336,7 +1336,7 @@ { const QPointer dTool = qobject_cast(dialogTool); SCASSERT(not dTool.isNull()) - VToolSeamAllowance::InsertNode(dTool->GetNodes(), dTool->GetPieceId(), sceneDetails, pattern, doc); + VToolSeamAllowance::InsertNodes(dTool->GetNodes(), dTool->GetPieceId(), sceneDetails, pattern, doc); } ArrowTool(true); doc->LiteParseTree(Document::LiteParse); @@ -5279,6 +5279,7 @@ ActionDraw(true); qApp->setOpeningPattern();// End opening file + m_statusLabel->setText(QString()); return true; } else diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/app/valentina/mainwindowsnogui.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/app/valentina/mainwindowsnogui.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/app/valentina/mainwindowsnogui.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/app/valentina/mainwindowsnogui.cpp 2020-12-04 09:12:21.000000000 +0000 @@ -293,6 +293,13 @@ QCoreApplication::processEvents(); +#ifdef LAYOUT_DEBUG + const QString path = QDir::homePath()+QStringLiteral("/LayoutDebug"); + QDir debugDir(path); + debugDir.removeRecursively(); + debugDir.mkpath(path); +#endif + forever { if (IsTimeout()) @@ -307,7 +314,9 @@ break; } - switch (lGenerator.State()) + nestingState = lGenerator.State(); + + switch (nestingState) { case LayoutErrors::NoError: if (lGenerator.PapersCount() <= papersCount) diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/app/valentina/xml/vpattern.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/app/valentina/xml/vpattern.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/app/valentina/xml/vpattern.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/app/valentina/xml/vpattern.cpp 2020-12-04 09:12:21.000000000 +0000 @@ -1175,8 +1175,8 @@ void VPattern::PointsCommonAttributes(const QDomElement &domElement, quint32 &id, qreal &mx, qreal &my) { ToolsCommonAttributes(domElement, id); - mx = qApp->toPixel(GetParametrDouble(domElement, AttrMx, QStringLiteral("10.0"))); - my = qApp->toPixel(GetParametrDouble(domElement, AttrMy, QStringLiteral("15.0"))); + mx = qApp->toPixel(GetParametrDouble(domElement, AttrMx, QString::number(labelMX))); + my = qApp->toPixel(GetParametrDouble(domElement, AttrMy, QString::number(labelMY))); } //--------------------------------------------------------------------------------------------------------------------- @@ -1184,8 +1184,8 @@ QString ¬es) { DrawToolsCommonAttributes(domElement, id, notes); - mx = qApp->toPixel(GetParametrDouble(domElement, AttrMx, QStringLiteral("10.0"))); - my = qApp->toPixel(GetParametrDouble(domElement, AttrMy, QStringLiteral("15.0"))); + mx = qApp->toPixel(GetParametrDouble(domElement, AttrMx, QString::number(labelMX))); + my = qApp->toPixel(GetParametrDouble(domElement, AttrMy, QString::number(labelMY))); } //--------------------------------------------------------------------------------------------------------------------- @@ -2459,13 +2459,13 @@ initData.dartP3Id = GetParametrUInt(domElement, AttrDartP3, NULL_ID_STR); initData.name1 = GetParametrString(domElement, AttrName1, QChar('A')); - initData.mx1 = qApp->toPixel(GetParametrDouble(domElement, AttrMx1, QStringLiteral("10.0"))); - initData.my1 = qApp->toPixel(GetParametrDouble(domElement, AttrMy1, QStringLiteral("15.0"))); + initData.mx1 = qApp->toPixel(GetParametrDouble(domElement, AttrMx1, QString::number(labelMX))); + initData.my1 = qApp->toPixel(GetParametrDouble(domElement, AttrMy1, QString::number(labelMY))); initData.showLabel1 = GetParametrBool(domElement, AttrShowLabel1, trueStr); initData.name2 = GetParametrString(domElement, AttrName2, QChar('A')); - initData.mx2 = qApp->toPixel(GetParametrDouble(domElement, AttrMx2, QStringLiteral("10.0"))); - initData.my2 = qApp->toPixel(GetParametrDouble(domElement, AttrMy2, QStringLiteral("15.0"))); + initData.mx2 = qApp->toPixel(GetParametrDouble(domElement, AttrMx2, QString::number(labelMX))); + initData.my2 = qApp->toPixel(GetParametrDouble(domElement, AttrMy2, QString::number(labelMY))); initData.showLabel2 = GetParametrBool(domElement, AttrShowLabel2, trueStr); VToolTrueDarts::Create(initData); diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/fervor/fvupdatewindow.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/fervor/fvupdatewindow.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/fervor/fvupdatewindow.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/fervor/fvupdatewindow.cpp 2020-12-04 09:12:21.000000000 +0000 @@ -70,7 +70,7 @@ QString downloadString; if (FvUpdater::IsTestBuild()) { - downloadString = QString("New %1 test build is now available. Would you like to download it now?") + downloadString = tr("New %1 test version is now available. Would you like to download it now?") .arg(QGuiApplication::applicationDisplayName()); } else diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vbank.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vbank.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vbank.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vbank.cpp 2020-12-04 09:12:23.000000000 +0000 @@ -438,15 +438,15 @@ } //--------------------------------------------------------------------------------------------------------------------- -qreal VBank::GetBiggestDiagonal() const +int VBank::FailedToArrange() const { - return diagonal; + return CountDetails(unsorted); } //--------------------------------------------------------------------------------------------------------------------- -int VBank::ArrangedCount() const +qreal VBank::GetBiggestDiagonal() const { - return details.size() - AllDetailsCount(); + return diagonal; } //--------------------------------------------------------------------------------------------------------------------- diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vbank.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vbank.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vbank.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vbank.h 2020-12-04 09:12:23.000000000 +0000 @@ -80,7 +80,7 @@ int AllDetailsCount() const; int LeftToArrange() const; - int ArrangedCount() const; + int FailedToArrange() const; qreal GetBiggestDiagonal() const; diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vlayoutdef.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vlayoutdef.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vlayoutdef.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vlayoutdef.h 2020-12-04 09:12:23.000000000 +0000 @@ -115,4 +115,26 @@ QPainterPath layoutAllowancePath{}; }; +/* Warning! Debugging doesn't work stable in debug mode. If you need big allocation use release mode. Or disable + * Address Sanitizer. See page https://bitbucket.org/dismine/valentina/wiki/developers/Address_Sanitizer + */ +//#define LAYOUT_DEBUG // Enable debug mode + +// This block help rule debug mode. Don't turn all options at the same time! +#ifdef LAYOUT_DEBUG +// Nice looking +# define SHOW_VERTICES // Show contour vertices +# define SHOW_DIRECTION // Show contour direction +# define ARRANGED_DETAILS // Show already arranged details +# define SHOW_SHEET // Show sheet rect +# define SHOW_CANDIDATE // Show each position + +// Debugging +//# define SHOW_ROTATION // For each position show rotation part +//# define SHOW_COMBINE // For each position show edge combine part +//# define SHOW_MIRROR // For each position show mirror part +//# define SHOW_CANDIDATE_BEST // For only correct positions that pass checks +# define SHOW_BEST // Show only best position for workpiece +#endif//LAYOUT_DEBUG + #endif // VLAYOUTDEF_H diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vlayoutgenerator.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vlayoutgenerator.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vlayoutgenerator.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vlayoutgenerator.cpp 2020-12-04 09:12:23.000000000 +0000 @@ -267,6 +267,11 @@ { UnitePages(); } + + if (bank->FailedToArrange() == 0) + { + state = LayoutErrors::NoError; + } } //--------------------------------------------------------------------------------------------------------------------- diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vlayoutpaper.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vlayoutpaper.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vlayoutpaper.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vlayoutpaper.cpp 2020-12-04 09:12:23.000000000 +0000 @@ -43,6 +43,10 @@ #include #include +#ifdef LAYOUT_DEBUG +#include +#endif + #include "vbestsquare.h" #include "vcontour.h" #include "vlayoutpiece.h" @@ -239,6 +243,10 @@ d->localRotationNumber = d->globalRotationNumber; } +#ifdef LAYOUT_DEBUG + QMutex mutex; +#endif + VPositionData data; data.gContour = d->globalContour; data.detail = detail; @@ -247,9 +255,17 @@ data.followGrainline = d->followGrainline; data.positionsCache = d->positionsCache; data.isOriginPaperOrientationPortrait = d->originPaperOrientation; +#ifdef LAYOUT_DEBUG + data.details = d->details; + data.mutex = &mutex; +#endif const VBestSquare result = VPosition::ArrangeDetail(data, &stop, d->saveLength); +#ifdef LAYOUT_DEBUG + return SaveResult(result, detail, &mutex); +#else return SaveResult(result, detail); +#endif } //--------------------------------------------------------------------------------------------------------------------- @@ -259,7 +275,11 @@ } //--------------------------------------------------------------------------------------------------------------------- -bool VLayoutPaper::SaveResult(const VBestSquare &bestResult, const VLayoutPiece &detail) +bool VLayoutPaper::SaveResult(const VBestSquare &bestResult, const VLayoutPiece &detail +#ifdef LAYOUT_DEBUG + , QMutex *mutex +#endif + ) { if (bestResult.HasValidResult()) { @@ -287,6 +307,12 @@ positionChache.boundingRect = VLayoutPiece::BoundingRect(layoutPoints); positionChache.layoutAllowancePath = VLayoutPiece::PainterPath(layoutPoints); d->positionsCache.append(positionChache); + +#ifdef LAYOUT_DEBUG +# ifdef SHOW_BEST + VPosition::DumpFrame(d->globalContour, workDetail, mutex, d->details); +# endif +#endif } else if (bestResult.IsTerminatedByException()) { diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vlayoutpaper.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vlayoutpaper.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vlayoutpaper.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vlayoutpaper.h 2020-12-04 09:12:23.000000000 +0000 @@ -44,6 +44,7 @@ class QGraphicsRectItem; class QRectF; class QGraphicsItem; +class QMutex; template class QList; template class QVector; @@ -107,7 +108,11 @@ private: QSharedDataPointer d; - bool SaveResult(const VBestSquare &bestResult, const VLayoutPiece &detail); + bool SaveResult(const VBestSquare &bestResult, const VLayoutPiece &detail +#ifdef LAYOUT_DEBUG + , QMutex *mutex +#endif + ); }; diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vposition.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vposition.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vposition.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vposition.cpp 2020-12-04 09:12:23.000000000 +0000 @@ -61,6 +61,85 @@ #include #endif +namespace +{ +#ifdef LAYOUT_DEBUG +//--------------------------------------------------------------------------------------------------------------------- +QPainterPath ShowDirection(const QLineF &edge) +{ + const int arrowLength = 14; + QPainterPath path; + if (edge.length()/arrowLength < 5) + { + return path; + } + + QLineF arrow = edge; + arrow.setLength(edge.length()/2.0); + + //Reverse line because we want start arrow from this point + arrow = QLineF(arrow.p2(), arrow.p1()); + const qreal angle = arrow.angle();//we each time change line angle, better save original angle value + arrow.setLength(arrowLength);//arrow length in pixels + + arrow.setAngle(angle-35); + path.moveTo(arrow.p1()); + path.lineTo(arrow.p2()); + + arrow.setAngle(angle+35); + path.moveTo(arrow.p1()); + path.lineTo(arrow.p2()); + return path; +} + +//--------------------------------------------------------------------------------------------------------------------- +QPainterPath DumpContour(const QVector &points) +{ + QPainterPath path; + path.setFillRule(Qt::WindingFill); + if (points.count() >= 2) + { + for (qint32 i = 0; i < points.count()-1; ++i) + { + path.moveTo(points.at(i)); + path.lineTo(points.at(i+1)); + } + path.lineTo(points.at(0)); + +#ifdef SHOW_DIRECTION + for (qint32 i = 0; i < points.count()-1; ++i) + { + path.addPath(ShowDirection(QLineF(points.at(i), points.at(i+1)))); + } +#endif + +#ifdef SHOW_VERTICES + for (qint32 i = 0; i < points.count(); ++i) + { + path.addRect(points.at(i).x()-3, points.at(i).y()-3, 6, 6); + } +#endif + } + return path; +} + +//--------------------------------------------------------------------------------------------------------------------- +QPainterPath DumpDetails(const QVector &details) +{ + QPainterPath path; + path.setFillRule(Qt::WindingFill); + if (details.count() > 0) + { + for (auto &detail : details) + { + path.addPath(detail.ContourPath()); + } + } + return path; +} +#endif +} //anonymous namespace + //--------------------------------------------------------------------------------------------------------------------- VPosition::VPosition() {} @@ -246,6 +325,12 @@ CombineEdges(detail, globalEdge, dEdge); +#ifdef LAYOUT_DEBUG +# ifdef SHOW_COMBINE + DumpFrame(m_data.gContour, detail, m_data.mutex, m_data.details); +# endif +#endif + CrossingType type = CrossingType::Intersection; if (not detail.IsForceFlipping() && SheetContains(detail.DetailBoundingRect())) { @@ -276,6 +361,12 @@ if (flagMirror && not detail.IsForbidFlipping()) { +#ifdef LAYOUT_DEBUG +# ifdef SHOW_MIRROR + DumpFrame(m_data.gContour, detail, m_data.mutex, m_data.details); +# endif +#endif + dEdge = detail.LayoutEdgeByPoint(globalEdge.p2()); if (dEdge <= 0) @@ -319,6 +410,12 @@ RotateEdges(detail, globalEdge, dEdge, angle); +#ifdef LAYOUT_DEBUG +# ifdef SHOW_ROTATION + DumpFrame(m_data.gContour, detail, m_data.mutex, m_data.details); +# endif +#endif + CrossingType type = CrossingType::Intersection; if (SheetContains(detail.DetailBoundingRect())) { @@ -349,6 +446,17 @@ if (CheckRotationEdges(workDetail, m_data.j, m_data.i, angle)) { + if (stop->load()) + { + return; + } + +#ifdef LAYOUT_DEBUG +# ifdef SHOW_CANDIDATE_BEST + DumpFrame(m_data.gContour, workDetail, m_data.mutex, m_data.details); +# endif +#endif + SaveCandidate(m_bestResult, workDetail, m_data.j, m_data.i, BestFrom::Rotation); } } @@ -372,10 +480,11 @@ for(auto &position : m_data.positionsCache) { - if (position.boundingRect.intersects(layoutBoundingRect) || position.boundingRect.contains(detailBoundingRect)) + if (position.boundingRect.intersects(layoutBoundingRect) || position.boundingRect.contains(detailBoundingRect) + || detailBoundingRect.contains(position.boundingRect)) { - if (position.layoutAllowancePath.contains(contourPath) || - position.layoutAllowancePath.intersects(layoutAllowancePath)) + if (position.layoutAllowancePath.contains(contourPath) || contourPath.contains(position.layoutAllowancePath) + || position.layoutAllowancePath.intersects(layoutAllowancePath)) { return CrossingType::Intersection; } @@ -489,6 +598,11 @@ //--------------------------------------------------------------------------------------------------------------------- void VPosition::FindBestPosition() { + if (stop->load()) + { + return; + } + if (not m_data.followGrainline || not m_data.detail.IsGrainlineEnabled()) { // We should use copy of the detail. @@ -497,6 +611,17 @@ int dEdge = m_data.i;// For mirror detail edge will be different if (CheckCombineEdges(workDetail, m_data.j, dEdge)) { + if (stop->load()) + { + return; + } + +#ifdef LAYOUT_DEBUG +# ifdef SHOW_CANDIDATE_BEST + DumpFrame(m_data.gContour, workDetail, m_data.mutex, m_data.details); +# endif +#endif + SaveCandidate(m_bestResult, workDetail, m_data.j, dEdge, BestFrom::Combine); } @@ -515,3 +640,92 @@ FollowGrainline(); } } + +#ifdef LAYOUT_DEBUG +//--------------------------------------------------------------------------------------------------------------------- +void VPosition::DumpFrame(const VContour &contour, const VLayoutPiece &detail, QMutex *mutex, + const QVector &details = QVector()) +{ + auto Bias = [](int length, int maxLength) + { + return length < maxLength && length*2 < maxLength ? length : maxLength-length; + }; + + const int biasWidth = Bias(contour.GetWidth(), QIMAGE_MAX); + const int biasHeight = Bias(contour.GetHeight(), QIMAGE_MAX); + + QPicture picture; + QPainter paint; + paint.begin(&picture); + + paint.setPen(QPen(Qt::black, 6, Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin)); + QPainterPath p; + if (contour.GetContour().isEmpty()) + { + p = DumpContour(contour.CutEmptySheetEdge()); + p.translate(biasWidth/2, biasHeight/2); + paint.drawPath(p); + } + else + { + p = DumpContour(contour.GetContour()); + p.translate(biasWidth/2, biasHeight/2); + paint.drawPath(p); + } + +#ifdef SHOW_CANDIDATE + paint.setPen(QPen(Qt::darkGreen, 6, Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin)); + p = DumpContour(detail.GetLayoutAllowancePoints()); + p.translate(biasWidth/2, biasHeight/2); + paint.drawPath(p); +#else + Q_UNUSED(detail) + Q_UNUSED(details) +#endif + +#ifdef ARRANGED_DETAILS + paint.setPen(QPen(Qt::blue, 2, Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin)); + p = DumpDetails(details); + p.translate(biasWidth/2, biasHeight/2); + paint.drawPath(p); +#else + Q_UNUSED(details) +#endif + + // Calculate bounding rect before draw sheet rect + const QRect pictureRect = picture.boundingRect(); + + // Sheet +#ifdef SHOW_SHEET + paint.setPen(QPen(Qt::darkRed, 15, Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin)); + paint.drawRect(QRectF(biasWidth/2, biasHeight/2, contour.GetWidth(), contour.GetHeight())); +#endif + + paint.end(); + + // Dump frame to image + // Note. If program was build with Address Sanitizer possible crashes. Address Sanitizer doesn't support big + // allocations. See page https://bitbucket.org/dismine/valentina/wiki/developers/Address_Sanitizer + QImage frameImage(pictureRect.width()+biasWidth, pictureRect.height()+biasHeight, QImage::Format_RGB32); + + if (frameImage.isNull()) + { + return; + } + + frameImage.fill(Qt::white); + + QPainter paintFrameImage; + paintFrameImage.begin(&frameImage); + paintFrameImage.drawPicture(0, 0, picture); + paintFrameImage.end(); + + QMutexLocker locker(mutex); + + static int frame = 0; + ++frame; + + const QString path = QDir::homePath()+QStringLiteral("/LayoutDebug/%1.png").arg(frame); + frameImage.save (path); +} +#endif diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vposition.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vposition.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vlayout/vposition.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vlayout/vposition.h 2020-12-04 09:12:23.000000000 +0000 @@ -35,6 +35,10 @@ #include #include +#ifdef LAYOUT_DEBUG +#include +#endif + #include "vbestsquare.h" #include "vcontour.h" #include "vlayoutdef.h" @@ -51,6 +55,10 @@ bool followGrainline{false}; QVector positionsCache{}; bool isOriginPaperOrientationPortrait{true}; +#ifdef LAYOUT_DEBUG + QVector details{}; + QMutex *mutex{nullptr}; +#endif }; QT_WARNING_PUSH @@ -72,6 +80,11 @@ static VBestSquare ArrangeDetail(const VPositionData &data, std::atomic_bool *stop, bool saveLength); +#ifdef LAYOUT_DEBUG + static void DumpFrame(const VContour &contour, const VLayoutPiece &detail, QMutex *mutex, + const QVector &details); +#endif + private: bool m_isValid{false}; VBestSquare m_bestResult{}; diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vmisc/projectversion.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vmisc/projectversion.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vmisc/projectversion.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vmisc/projectversion.cpp 2020-12-04 09:12:23.000000000 +0000 @@ -42,7 +42,7 @@ extern const int MAJOR_VERSION = 0; extern const int MINOR_VERSION = 7; -extern const int DEBUG_VERSION = 40; +extern const int DEBUG_VERSION = 41; extern const QString APP_VERSION_STR(QStringLiteral("%1.%2.%3.%4").arg(MAJOR_VERSION).arg(MINOR_VERSION) .arg(DEBUG_VERSION).arg(LATEST_TAG_DISTANCE)); diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vmisc/projectversion.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vmisc/projectversion.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vmisc/projectversion.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vmisc/projectversion.h 2020-12-04 09:12:23.000000000 +0000 @@ -49,8 +49,8 @@ // Change version number in projectversion.cpp too. // Synchronize valentina.nsi -#define VER_FILEVERSION 0,7,40 -#define VER_FILEVERSION_STR "0.7.40\0" +#define VER_FILEVERSION 0,7,41 +#define VER_FILEVERSION_STR "0.7.41\0" #define V_PRERELEASE // Mark prerelease builds diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h 2020-12-04 09:12:25.000000000 +0000 @@ -152,7 +152,7 @@ virtual void ReadToolAttributes(const QDomElement &domElement) override; virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - void UpdateNamePosition(quint32 id, const QPointF &pos); + virtual void UpdateNamePosition(quint32 id, const QPointF &pos) override; void SaveSourceDestination(QDomElement &tag); template diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.h 2020-12-04 09:12:25.000000000 +0000 @@ -56,8 +56,8 @@ dartP2Id(NULL_ID), dartP3Id(NULL_ID), name1(), - mx1(10), - my1(15), + mx1(labelMX), + my1(labelMY), showLabel1(true), name2(), mx2(10), diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolcurveintersectaxis.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolcurveintersectaxis.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolcurveintersectaxis.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolcurveintersectaxis.cpp 2020-12-04 09:12:25.000000000 +0000 @@ -222,7 +222,7 @@ //--------------------------------------------------------------------------------------------------------------------- QString VToolCurveIntersectAxis::CurveName() const { - return VAbstractTool::data.GetGObject(curveId)->name(); + return VAbstractTool::data.GetGObject(curveId)->ObjectName(); } //--------------------------------------------------------------------------------------------------------------------- diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolbasepoint.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolbasepoint.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolbasepoint.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolbasepoint.h 2020-12-04 09:12:25.000000000 +0000 @@ -50,8 +50,8 @@ VToolBasePointInitData() : VToolSinglePointInitData(), nameActivPP(), - x(10), - y(10) + x(labelMX), + y(labelMY) {} QString nameActivPP; diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromarcandtangent.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromarcandtangent.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromarcandtangent.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromarcandtangent.cpp 2020-12-04 09:12:25.000000000 +0000 @@ -234,7 +234,7 @@ //--------------------------------------------------------------------------------------------------------------------- QString VToolPointFromArcAndTangent::ArcName() const { - return VAbstractTool::data.GetGObject(arcId)->name(); + return VAbstractTool::data.GetGObject(arcId)->ObjectName(); } //--------------------------------------------------------------------------------------------------------------------- diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectionarcs.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectionarcs.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectionarcs.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectionarcs.cpp 2020-12-04 09:12:25.000000000 +0000 @@ -250,13 +250,13 @@ //--------------------------------------------------------------------------------------------------------------------- QString VToolPointOfIntersectionArcs::FirstArcName() const { - return VAbstractTool::data.GetGObject(firstArcId)->name(); + return VAbstractTool::data.GetGObject(firstArcId)->ObjectName(); } //--------------------------------------------------------------------------------------------------------------------- QString VToolPointOfIntersectionArcs::SecondArcName() const { - return VAbstractTool::data.GetGObject(secondArcId)->name(); + return VAbstractTool::data.GetGObject(secondArcId)->ObjectName(); } //--------------------------------------------------------------------------------------------------------------------- diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncurves.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncurves.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncurves.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncurves.cpp 2020-12-04 09:12:25.000000000 +0000 @@ -283,13 +283,13 @@ //--------------------------------------------------------------------------------------------------------------------- QString VToolPointOfIntersectionCurves::FirstCurveName() const { - return VAbstractTool::data.GetGObject(firstCurveId)->name(); + return VAbstractTool::data.GetGObject(firstCurveId)->ObjectName(); } //--------------------------------------------------------------------------------------------------------------------- QString VToolPointOfIntersectionCurves::SecondCurveName() const { - return VAbstractTool::data.GetGObject(secondCurveId)->name(); + return VAbstractTool::data.GetGObject(secondCurveId)->ObjectName(); } //--------------------------------------------------------------------------------------------------------------------- diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolsinglepoint.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolsinglepoint.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolsinglepoint.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolsinglepoint.h 2020-12-04 09:12:25.000000000 +0000 @@ -49,8 +49,8 @@ VToolSinglePointInitData() : VDrawToolInitData(), name(), - mx(5), - my(10), + mx(labelMX), + my(labelMY), showLabel(true) {} diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/vabstractpoint.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/vabstractpoint.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/vabstractpoint.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/toolpoint/vabstractpoint.h 2020-12-04 09:12:25.000000000 +0000 @@ -68,8 +68,6 @@ protected: void SetPointName(quint32 id, const QString &name); - virtual void UpdateNamePosition(quint32 id, const QPointF &pos)=0; - template static void InitToolConnections(VMainGraphicsScene *scene, T *tool); diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/vdrawtool.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/vdrawtool.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/vdrawtool.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/vdrawtool.cpp 2020-12-04 09:12:25.000000000 +0000 @@ -186,6 +186,13 @@ } //--------------------------------------------------------------------------------------------------------------------- +void VDrawTool::UpdateNamePosition(quint32 id, const QPointF &pos) +{ + Q_UNUSED(id) + Q_UNUSED(pos) +} + +//--------------------------------------------------------------------------------------------------------------------- bool VDrawTool::CorrectDisable(bool disable, const QString &namePP) const { if (disable) diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/vdrawtool.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/vdrawtool.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/drawTools/vdrawtool.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/drawTools/vdrawtool.h 2020-12-04 09:12:25.000000000 +0000 @@ -52,6 +52,7 @@ #include "../vdatatool.h" #include "../vgeometry/vpointf.h" #include "../vtools/undocommands/undogroup.h" +#include "../toolsdef.h" struct VDrawToolInitData : VAbstractToolInitData { @@ -120,6 +121,7 @@ void SaveOption(QSharedPointer &obj); virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj); virtual QString MakeToolTip() const; + virtual void UpdateNamePosition(quint32 id, const QPointF &pos); bool CorrectDisable(bool disable, const QString &namePP) const; @@ -241,6 +243,9 @@ actionShowLabel->setVisible(false); } + QAction *actionRestoreLabelPosition = menu.addAction(VDrawTool::tr("Restore label position")); + actionRestoreLabelPosition->setVisible(itemType == GOType::Point); + QAction *actionRemove = menu.addAction(QIcon::fromTheme(QStringLiteral("edit-delete")), VDrawTool::tr("Delete")); if (showRemove == RemoveOption::Enable) { @@ -299,6 +304,10 @@ { ChangeLabelVisibility(itemId, selectedAction->isChecked()); } + else if (selectedAction == actionRestoreLabelPosition) + { + UpdateNamePosition(itemId, QPointF(labelMX, labelMY)); + } else if (selectedAction->actionGroup() == actionsAddToGroup) { quint32 groupId = selectedAction->data().toUInt(); diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/toolsdef.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/toolsdef.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/toolsdef.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/toolsdef.h 2020-12-04 09:12:25.000000000 +0000 @@ -47,6 +47,10 @@ Q_DECLARE_METATYPE(SourceItem) Q_DECLARE_TYPEINFO(SourceItem, Q_MOVABLE_TYPE); +// Default label position +const int labelMX = 10; +const int labelMY = 15; + QVector SourceToObjects(const QVector &source); QString OriginAlias(quint32 id, const QVector &source, const QSharedPointer &obj); diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/vtoolseamallowance.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/vtoolseamallowance.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/vtoolseamallowance.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/vtoolseamallowance.cpp 2020-12-04 09:12:25.000000000 +0000 @@ -223,8 +223,8 @@ } //--------------------------------------------------------------------------------------------------------------------- -void VToolSeamAllowance::InsertNode(const QVector &nodes, quint32 pieceId, VMainGraphicsScene *scene, - VContainer *data, VAbstractPattern *doc) +void VToolSeamAllowance::InsertNodes(const QVector &nodes, quint32 pieceId, VMainGraphicsScene *scene, + VContainer *data, VAbstractPattern *doc) { SCASSERT(scene != nullptr) SCASSERT(data != nullptr) @@ -259,7 +259,7 @@ VToolSeamAllowance *saTool = qobject_cast(VAbstractPattern::getTool(pieceId)); SCASSERT(saTool != nullptr); - InitNode(node, scene, data, doc, saTool); + InitNode(node, scene, saTool); } qApp->getUndoStack()->push(new SavePieceOptions(oldDet, newDet, doc, pieceId)); @@ -1744,17 +1744,16 @@ { for (int i = 0; i< detail.GetPath().CountNodes(); ++i) { - InitNode(detail.GetPath().at(i), scene, &(VAbstractTool::data), doc, this); + const VPieceNode &node = detail.GetPath().at(i); + InitNode(node, scene, this); + doc->IncrementReferens(VAbstractTool::data.GetGObject(node.GetId())->getIdTool()); } } //--------------------------------------------------------------------------------------------------------------------- -void VToolSeamAllowance::InitNode(const VPieceNode &node, VMainGraphicsScene *scene, VContainer *data, - VAbstractPattern *doc, VToolSeamAllowance *parent) +void VToolSeamAllowance::InitNode(const VPieceNode &node, VMainGraphicsScene *scene, VToolSeamAllowance *parent) { SCASSERT(scene != nullptr) - SCASSERT(data != nullptr) - SCASSERT(doc != nullptr) SCASSERT(parent != nullptr) switch (node.GetTypeTool()) @@ -1788,7 +1787,6 @@ tool->setParentItem(parent); tool->SetParentType(ParentType::Item); tool->SetExluded(node.IsExcluded()); - doc->IncrementReferens(node.GetId()); } tool->setVisible(not node.IsExcluded());//Hide excluded point break; @@ -1797,7 +1795,7 @@ case (Tool::NodeElArc): case (Tool::NodeSpline): case (Tool::NodeSplinePath): - doc->IncrementReferens(data->GetGObject(node.GetId())->getIdTool()); + // Do nothing break; default: qDebug()<<"Get wrong tool type. Ignore."; diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/vtoolseamallowance.h valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/vtoolseamallowance.h --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/tools/vtoolseamallowance.h 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/tools/vtoolseamallowance.h 2020-12-04 09:12:25.000000000 +0000 @@ -91,7 +91,7 @@ void RemoveWithConfirm(bool ask); - static void InsertNode(const QVector &nodes, quint32 pieceId, VMainGraphicsScene *scene, + static void InsertNodes(const QVector &nodes, quint32 pieceId, VMainGraphicsScene *scene, VContainer *data, VAbstractPattern *doc); static void AddAttributes(VAbstractPattern *doc, QDomElement &domElement, quint32 id, const VPiece &piece); @@ -202,8 +202,7 @@ qreal &rotationAngle, QPointF &pos); void InitNodes(const VPiece &detail, VMainGraphicsScene *scene); - static void InitNode(const VPieceNode &node, VMainGraphicsScene *scene, VContainer *data, VAbstractPattern *doc, - VToolSeamAllowance *parent); + static void InitNode(const VPieceNode &node, VMainGraphicsScene *scene, VToolSeamAllowance *parent); void InitCSAPaths(const VPiece &detail) const; void InitInternalPaths(const VPiece &detail); void InitSpecialPoints(const QVector &points) const; diff -Nru valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/visualization/line/vistoolpointfromarcandtangent.cpp valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/visualization/line/vistoolpointfromarcandtangent.cpp --- valentina-0.7.40+1041+202011230938~ubuntu20.10.1/src/libs/vtools/visualization/line/vistoolpointfromarcandtangent.cpp 2020-11-23 09:37:47.000000000 +0000 +++ valentina-0.7.41+1062+202012040912~ubuntu20.10.1/src/libs/vtools/visualization/line/vistoolpointfromarcandtangent.cpp 2020-12-04 09:12:26.000000000 +0000 @@ -98,16 +98,16 @@ const qreal radius = arc->GetRadius(); const int res = VGObject::ContactPoints (p, center, radius, p1, p2); - QLineF r1Arc(center, p1); - r1Arc.setLength(radius+10); - - QLineF r2Arc(center, p2); - r2Arc.setLength(radius+10); - switch(res) { case 2: { + QLineF r1Arc(center, p1); + r1Arc.setLength(radius+10); + + QLineF r2Arc(center, p2); + r2Arc.setLength(radius+10); + int localRes = 0; bool flagP1 = false;