Download raw body.
update cad/qcad 3.32.4.0
Hello ports! This diff updates qcad to 3.32.4.0 and adds and removes
some patches, ok?
I don't use qcad, but I need to touch this port because its PLIST had
lines like
@lib share/qcad/plugins/script/libqtscript_core.so.1.0
This breaks a rule: every @lib must be in SHARED_LIBS and have a
version like ${LIBqtscript_core_VERSION}. An incoming diff to
pkg_create(1) will enforce this rule (thread "pkg_create: @lib
without LIBname_VERSION"), so we must patch qcad.
After I updated the port, I patched qtbindingsbase.pri to build
libqtscript_*.so with "CONFIG += plugin". This chops off the ".1.0"
and changes each @lib to a @so, which avoids the @lib rule.
After the update, the patch in ecmaapi.pro broke the build by turning
off precompiled_header; I turned it back on. I had errors about
unknown types like QScriptEngine. The pch from "stable.h" includes
some QScript headers and fixes the errors. The pch works for me with
base-clang 19.1.7 on amd64.
"readelf -d /usr/local/bin/qcad" was missing some library version
numbers; I fixed it by adding some patches to comment out "CONFIG +=
plugin" for each library linked with -l in shared_app.pri.
I dropped the patch for run/main.cpp to get rid of a warning on my
terminal from a Qt Designer plugin. Without the patch, run/main.cpp
stops loading such plugins. I dropped a few other obsolete patches.
I dropped the dependency on x11/qt5/qtwebengine, because I can't see
where it is used. (shared.pri says, "QCAD does not depend on WebKit /
WebEngine anymore and uses QTextBrowser instead:")
My last experience with any CAD was more than 20 years ago, but I am
able to start qcad 3.32.4.0 on amd64 and draw a silly diagram.
--gkoehler
Index: Makefile
===================================================================
RCS file: /cvs/ports/cad/qcad/Makefile,v
diff -u -p -r1.47 Makefile
--- Makefile 2 Jan 2024 10:15:24 -0000 1.47
+++ Makefile 16 Nov 2025 19:01:45 -0000
@@ -2,9 +2,9 @@ COMMENT = Qt-based 2D CAD system
GH_ACCOUNT = qcad
GH_PROJECT = qcad
-GH_TAGNAME = v3.28.2.2
+GH_TAGNAME = v3.32.4.0
-SO_VERSION = 2.0
+SO_VERSION = 3.0
QCAD_LIBS = qcadcore \
qcadecmaapi \
qcadentity \
@@ -31,7 +31,8 @@ PERMIT_PACKAGE =Yes
WANTLIB += ${COMPILER_LIBCXX} GL Qt5Concurrent Qt5Core Qt5Designer
WANTLIB += Qt5Gui Qt5Help Qt5Network Qt5OpenGL Qt5PrintSupport
WANTLIB += Qt5Script Qt5ScriptTools Qt5Sql Qt5Svg Qt5Widgets Qt5Xml
-WANTLIB += Qt5XmlPatterns c cups jpeg m sqlite3 stemmer tiff z
+WANTLIB += Qt5XmlPatterns c cups execinfo jpeg m sqlite3 stemmer
+WANTLIB += tiff z
MODULES = devel/qmake \
x11/qt5
@@ -39,8 +40,7 @@ MODULES = devel/qmake \
BUILD_DEPENDS = sysutils/e2fsprogs \
x11/qt5/qtimageformats
-RUN_DEPENDS = devel/desktop-file-utils \
- x11/qt5/qtwebengine
+RUN_DEPENDS = devel/desktop-file-utils
LIB_DEPENDS = print/cups,-libs \
textproc/libstemmer \
@@ -63,17 +63,11 @@ pre-configure:
cp ${WRKSRC}/src/3rdparty/qt-labs-qtscriptgenerator-5.15.3/qt-labs-qtscriptgenerator-5.15.3.pro \
${WRKSRC}/src/3rdparty/qt-labs-qtscriptgenerator-${MODQT5_VERSION}/qt-labs-qtscriptgenerator-${MODQT5_VERSION}.pro
${SUBST_CMD} ${WRKSRC}/src/core/RS.cpp \
- ${WRKSRC}/src/core/RSettings.cpp \
- ${WRKSRC}/scripts/Help/ShowReadme/ShowReadme.js
-
+ ${WRKSRC}/src/core/RSettings.cpp
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/release/qcad-bin ${PREFIX}/bin/qcad
-.for _lib in ${QCAD_LIBS}
- ${INSTALL_DATA} ${WRKSRC}/release/lib${_lib}.so \
- ${PREFIX}/lib/lib${_lib}.so.${SO_VERSION}
-.endfor
- ${INSTALL_DATA} ${WRKSRC}/release/*.a ${PREFIX}/lib/
+ ${INSTALL_DATA} ${WRKSRC}/release/*.{a,so.*} ${PREFIX}/lib/
${INSTALL_MAN} ${WRKSRC}/qcad.1 ${PREFIX}/man/man1
${INSTALL_DATA_DIR} ${PREFIX}/share/applications
${INSTALL_DATA} ${WRKSRC}/qcad.desktop ${PREFIX}/share/applications
@@ -81,7 +75,9 @@ do-install:
.for dir in fonts libraries linetypes patterns plugins scripts themes ts
cp -Rp ${WRKSRC}/${dir} ${PREFIX}/share/qcad/
.endfor
- find ${PREFIX} \( -name .gitignore -or -name *.pr[io] -or -name *.ts \) -delete
+ find ${PREFIX} \( -name .gitignore -or \
+ -name '*.orig.port' -or -name '*.pr[io]' -or \
+ -name '*.ts' \) -delete
${INSTALL_DATA} ${WRKSRC}/readme.txt ${PREFIX}/share/qcad
${INSTALL_DATA_DIR} ${PREFIX}/share/pixmaps
${INSTALL_DATA} ${WRKSRC}/scripts/qcad_icon.png \
Index: distinfo
===================================================================
RCS file: /cvs/ports/cad/qcad/distinfo,v
diff -u -p -r1.13 distinfo
--- distinfo 14 Dec 2023 12:17:57 -0000 1.13
+++ distinfo 16 Nov 2025 19:01:45 -0000
@@ -1,2 +1,2 @@
-SHA256 (qcad-3.28.2.2.tar.gz) = YXNJV+adhsc2E8bTeDyT71/J92smaoDFoBHbESE3lDw=
-SIZE (qcad-3.28.2.2.tar.gz) = 42292122
+SHA256 (qcad-3.32.4.0.tar.gz) = kqo5h2oMIvpsC2nxtNLeL3DYsis9FMrO7VSPd9CjiLw=
+SIZE (qcad-3.32.4.0.tar.gz) = 48002361
Index: patches/patch-scripts_Help_About_About_js
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-scripts_Help_About_About_js,v
diff -u -p -r1.4 patch-scripts_Help_About_About_js
--- patches/patch-scripts_Help_About_About_js 29 Aug 2022 15:18:10 -0000 1.4
+++ patches/patch-scripts_Help_About_About_js 16 Nov 2025 19:01:45 -0000
@@ -1,7 +1,7 @@
Index: scripts/Help/About/About.js
--- scripts/Help/About/About.js.orig
+++ scripts/Help/About/About.js
-@@ -474,6 +474,9 @@ About.prototype.initAboutSystem = function(textEdit) {
+@@ -475,6 +475,9 @@ About.prototype.initAboutSystem = function(textEdit) {
if (RS.getSystemId()==="solaris") {
text += "Solaris";
}
Index: patches/patch-scripts_Help_ShowReadme_ShowReadme_js
===================================================================
RCS file: patches/patch-scripts_Help_ShowReadme_ShowReadme_js
diff -N patches/patch-scripts_Help_ShowReadme_ShowReadme_js
--- patches/patch-scripts_Help_ShowReadme_ShowReadme_js 29 Aug 2022 15:18:10 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-Index: scripts/Help/ShowReadme/ShowReadme.js
---- scripts/Help/ShowReadme/ShowReadme.js.orig
-+++ scripts/Help/ShowReadme/ShowReadme.js
-@@ -19,7 +19,7 @@
-
- include("scripts/Help/Help.js");
-
--ShowReadme.readmeFile = "readme.txt";
-+ShowReadme.readmeFile = "${LOCALBASE}/share/qcadreadme.txt";
-
- function ShowReadme(guiAction) {
- Help.call(this, guiAction);
Index: patches/patch-scripts_Widgets_CommandLine_CommandLine_js
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-scripts_Widgets_CommandLine_CommandLine_js,v
diff -u -p -r1.5 patch-scripts_Widgets_CommandLine_CommandLine_js
--- patches/patch-scripts_Widgets_CommandLine_CommandLine_js 2 Jan 2023 12:40:09 -0000 1.5
+++ patches/patch-scripts_Widgets_CommandLine_CommandLine_js 16 Nov 2025 19:01:45 -0000
@@ -1,7 +1,7 @@
Index: scripts/Widgets/CommandLine/CommandLine.js
--- scripts/Widgets/CommandLine/CommandLine.js.orig
+++ scripts/Widgets/CommandLine/CommandLine.js
-@@ -498,6 +498,9 @@ CommandLine.init = function(basePath) {
+@@ -539,6 +539,9 @@ CommandLine.init = function(basePath) {
case "solaris":
system = "Solaris";
break;
@@ -9,5 +9,5 @@ Index: scripts/Widgets/CommandLine/Comma
+ system = "OpenBSD";
+ break;
}
- EAction.handleUserMessage(
- "%1 %2 / Qt %3 / %4 %5"
+ var platformName = "";
+ if (RSettings.getQtVersion() >= 0x060000) {
Index: patches/patch-shared_app_pri
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-shared_app_pri,v
diff -u -p -r1.3 patch-shared_app_pri
--- patches/patch-shared_app_pri 29 Aug 2022 15:18:10 -0000 1.3
+++ patches/patch-shared_app_pri 16 Nov 2025 19:01:45 -0000
@@ -10,3 +10,14 @@ Index: shared_app.pri
}
win32 {
+@@ -45,6 +45,10 @@ linux-g++ {
+
+ freebsd-* {
+ LIBS += -lGLU -lexecinfo
++}
++
++openbsd {
++ LIBS += -lexecinfo
+ }
+
+ macx {
Index: patches/patch-src_3rdparty_3rdparty_pro
===================================================================
RCS file: patches/patch-src_3rdparty_3rdparty_pro
diff -N patches/patch-src_3rdparty_3rdparty_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_3rdparty_3rdparty_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,31 @@
+Must use textproc/libstemmer, because qcad links to the port if it is
+installed.
+
+Index: src/3rdparty/3rdparty.pro
+--- src/3rdparty/3rdparty.pro.orig
++++ src/3rdparty/3rdparty.pro
+@@ -1,7 +1,7 @@
+ include (../../shared.pri)
+ TEMPLATE = subdirs
+ SUBDIRS = \
+- stemmer \
++ #stemmer \
+ legacy
+
+
+@@ -27,12 +27,12 @@ else {
+ }
+
+ !r_mobile {
+- exists(qt-labs-qtscriptgenerator-$${QT_VERSION}) {
+- SUBDIRS += qt-labs-qtscriptgenerator-$${QT_VERSION}
++ exists(qt-labs-qtscriptgenerator-5.15.16) {
++ SUBDIRS += qt-labs-qtscriptgenerator-5.15.16
+ }
+ else {
+ lessThan(QT_MAJOR_VERSION, 6) {
+- error("Script bindings not available for Qt version $${QT_VERSION}. You can add them to src/3rdparty/qt-labs-qtscriptgenerator-$${QT_VERSION} or use another version of Qt.")
++ error("Script bindings not available for Qt version 5.15.16. You can add them to src/3rdparty/qt-labs-qtscriptgenerator-5.15.16 or use another version of Qt.")
+ }
+ }
+ }
Index: patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_pro
===================================================================
RCS file: patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_pro
diff -N patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,12 @@
+Use base zlib. A future version of qcad might need this patch moved
+from 3rdparty/legacy/opennurbs to 3rdparty/opennurbs.
+
+Index: src/3rdparty/legacy/opennurbs/opennurbs.pro
+--- src/3rdparty/legacy/opennurbs/opennurbs.pro.orig
++++ src/3rdparty/legacy/opennurbs/opennurbs.pro
+@@ -1,5 +1,4 @@
+ include (../../../../shared.pri)
+ TEMPLATE = subdirs
+ SUBDIRS = \
+- zlib \
+ opennurbs
Index: patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_zlib_cpp
===================================================================
RCS file: patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_zlib_cpp
diff -N patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_zlib_cpp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_zlib_cpp 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,62 @@
+Use base zlib. A future version of qcad might need this patch moved
+from 3rdparty/legacy/opennurbs to 3rdparty/opennurbs.
+
+Index: src/3rdparty/legacy/opennurbs/opennurbs_zlib.cpp
+--- src/3rdparty/legacy/opennurbs/opennurbs_zlib.cpp.orig
++++ src/3rdparty/legacy/opennurbs/opennurbs_zlib.cpp
+@@ -293,11 +293,11 @@ size_t ON_BinaryArchive::WriteDeflate( // returns numb
+ // no uncompressed input is left - switch to finish mode
+ flush = Z_FINISH;
+ }
+- zrc = z_deflate( &m_zlib.strm, flush );
++ zrc = deflate( &m_zlib.strm, flush );
+ if ( zrc < 0 )
+ {
+ // Something went haywire - bail out.
+- ON_ERROR("ON_BinaryArchive::WriteDeflate - z_deflate failure");
++ ON_ERROR("ON_BinaryArchive::WriteDeflate - deflate failure");
+ rc = false;
+ break;
+ }
+@@ -491,11 +491,11 @@ bool ON_BinaryArchive::ReadInflate(
+ // no compressed input is left - switch to finish mode
+ flush = Z_FINISH;
+ }
+- zrc = z_inflate( &m_zlib.strm, flush );
++ zrc = inflate( &m_zlib.strm, flush );
+ if ( zrc < 0 )
+ {
+ // Something went haywire - bail out.
+- ON_ERROR("ON_BinaryArchive::ReadInflate - z_inflate failure");
++ ON_ERROR("ON_BinaryArchive::ReadInflate - inflate failure");
+ rc = false;
+ break;
+ }
+@@ -1151,11 +1151,11 @@ size_t ON_CompressedBuffer::DeflateHelper( // returns
+ // no uncompressed input is left - switch to finish mode
+ flush = Z_FINISH;
+ }
+- zrc = z_deflate( &m_zlib.strm, flush );
++ zrc = deflate( &m_zlib.strm, flush );
+ if ( zrc < 0 )
+ {
+ // Something went haywire - bail out.
+- ON_ERROR("ON_CompressedBuffer::DeflateHelper - z_deflate failure");
++ ON_ERROR("ON_CompressedBuffer::DeflateHelper - deflate failure");
+ rc = false;
+ break;
+ }
+@@ -1284,11 +1284,11 @@ bool ON_CompressedBuffer::InflateHelper(
+ // no compressed input is left - switch to finish mode
+ flush = Z_FINISH;
+ }
+- zrc = z_inflate( &m_zlib.strm, flush );
++ zrc = inflate( &m_zlib.strm, flush );
+ if ( zrc < 0 )
+ {
+ // Something went haywire - bail out.
+- ON_ERROR("ON_CompressedBuffer::InflateHelper - z_inflate failure");
++ ON_ERROR("ON_CompressedBuffer::InflateHelper - inflate failure");
+ rc = false;
+ break;
+ }
Index: patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_zlib_h
===================================================================
RCS file: patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_zlib_h
diff -N patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_zlib_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_3rdparty_legacy_opennurbs_opennurbs_zlib_h 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,15 @@
+Use base zlib. A future version of qcad might need this patch moved
+from 3rdparty/legacy/opennurbs to 3rdparty/opennurbs.
+
+Index: src/3rdparty/legacy/opennurbs/opennurbs_zlib.h
+--- src/3rdparty/legacy/opennurbs/opennurbs_zlib.h.orig
++++ src/3rdparty/legacy/opennurbs/opennurbs_zlib.h
+@@ -39,7 +39,7 @@
+ #endif
+
+ extern "C" {
+-#include "./zlib/zlib.h"
++#include <zlib.h>
+ }
+
+ ON_BEGIN_EXTERNC
Index: patches/patch-src_3rdparty_legacy_spatialindexnavel_spatialindexnavel_pro
===================================================================
RCS file: patches/patch-src_3rdparty_legacy_spatialindexnavel_spatialindexnavel_pro
diff -N patches/patch-src_3rdparty_legacy_spatialindexnavel_spatialindexnavel_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_3rdparty_legacy_spatialindexnavel_spatialindexnavel_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,14 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
+Index: src/3rdparty/legacy/spatialindexnavel/spatialindexnavel.pro
+--- src/3rdparty/legacy/spatialindexnavel/spatialindexnavel.pro.orig
++++ src/3rdparty/legacy/spatialindexnavel/spatialindexnavel.pro
+@@ -6,7 +6,7 @@ r_static_libs {
+ CONFIG += staticlib
+ }
+ else {
+- CONFIG += plugin
++ #CONFIG += plugin
+ }
+
+ # this is required to compile the spatial index library from navel ltd:
Index: patches/patch-src_3rdparty_opennurbs_opennurbs_opennurbs_pro
===================================================================
RCS file: patches/patch-src_3rdparty_opennurbs_opennurbs_opennurbs_pro
diff -N patches/patch-src_3rdparty_opennurbs_opennurbs_opennurbs_pro
--- patches/patch-src_3rdparty_opennurbs_opennurbs_opennurbs_pro 11 Mar 2022 18:24:31 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-Index: src/3rdparty/opennurbs/opennurbs/opennurbs.pro
---- src/3rdparty/opennurbs/opennurbs/opennurbs.pro.orig
-+++ src/3rdparty/opennurbs/opennurbs/opennurbs.pro
-@@ -225,7 +225,7 @@ CONFIG(release, debug|release) {
- else {
- LIBS += -L../zlib/debug
- }
--LIBS += -lzlib
-+LIBS += -lz
- win32 {
- #DEFINES += ON_DLL_EXPORTS ON_COMPILING_OPENNURBS NDEBUG
- DEFINES += ON_COMPILING_OPENNURBS NDEBUG
Index: patches/patch-src_3rdparty_opennurbs_opennurbs_pro
===================================================================
RCS file: patches/patch-src_3rdparty_opennurbs_opennurbs_pro
diff -N patches/patch-src_3rdparty_opennurbs_opennurbs_pro
--- patches/patch-src_3rdparty_opennurbs_opennurbs_pro 11 Mar 2022 18:24:31 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,9 +0,0 @@
-Index: src/3rdparty/opennurbs/opennurbs.pro
---- src/3rdparty/opennurbs/opennurbs.pro.orig
-+++ src/3rdparty/opennurbs/opennurbs.pro
-@@ -1,5 +1,4 @@
- include (../../../shared.pri)
- TEMPLATE = subdirs
- SUBDIRS = \
-- zlib \
- opennurbs
Index: patches/patch-src_3rdparty_opennurbs_opennurbs_zlib_cpp
===================================================================
RCS file: patches/patch-src_3rdparty_opennurbs_opennurbs_zlib_cpp
diff -N patches/patch-src_3rdparty_opennurbs_opennurbs_zlib_cpp
--- patches/patch-src_3rdparty_opennurbs_opennurbs_zlib_cpp 11 Mar 2022 18:24:31 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,59 +0,0 @@
-Index: src/3rdparty/opennurbs/opennurbs_zlib.cpp
---- src/3rdparty/opennurbs/opennurbs_zlib.cpp.orig
-+++ src/3rdparty/opennurbs/opennurbs_zlib.cpp
-@@ -293,11 +293,11 @@ size_t ON_BinaryArchive::WriteDeflate( // returns numb
- // no uncompressed input is left - switch to finish mode
- flush = Z_FINISH;
- }
-- zrc = z_deflate( &m_zlib.strm, flush );
-+ zrc = deflate( &m_zlib.strm, flush );
- if ( zrc < 0 )
- {
- // Something went haywire - bail out.
-- ON_ERROR("ON_BinaryArchive::WriteDeflate - z_deflate failure");
-+ ON_ERROR("ON_BinaryArchive::WriteDeflate - deflate failure");
- rc = false;
- break;
- }
-@@ -491,11 +491,11 @@ bool ON_BinaryArchive::ReadInflate(
- // no compressed input is left - switch to finish mode
- flush = Z_FINISH;
- }
-- zrc = z_inflate( &m_zlib.strm, flush );
-+ zrc = inflate( &m_zlib.strm, flush );
- if ( zrc < 0 )
- {
- // Something went haywire - bail out.
-- ON_ERROR("ON_BinaryArchive::ReadInflate - z_inflate failure");
-+ ON_ERROR("ON_BinaryArchive::ReadInflate - inflate failure");
- rc = false;
- break;
- }
-@@ -1151,11 +1151,11 @@ size_t ON_CompressedBuffer::DeflateHelper( // returns
- // no uncompressed input is left - switch to finish mode
- flush = Z_FINISH;
- }
-- zrc = z_deflate( &m_zlib.strm, flush );
-+ zrc = deflate( &m_zlib.strm, flush );
- if ( zrc < 0 )
- {
- // Something went haywire - bail out.
-- ON_ERROR("ON_CompressedBuffer::DeflateHelper - z_deflate failure");
-+ ON_ERROR("ON_CompressedBuffer::DeflateHelper - deflate failure");
- rc = false;
- break;
- }
-@@ -1284,11 +1284,11 @@ bool ON_CompressedBuffer::InflateHelper(
- // no compressed input is left - switch to finish mode
- flush = Z_FINISH;
- }
-- zrc = z_inflate( &m_zlib.strm, flush );
-+ zrc = inflate( &m_zlib.strm, flush );
- if ( zrc < 0 )
- {
- // Something went haywire - bail out.
-- ON_ERROR("ON_CompressedBuffer::InflateHelper - z_inflate failure");
-+ ON_ERROR("ON_CompressedBuffer::InflateHelper - inflate failure");
- rc = false;
- break;
- }
Index: patches/patch-src_3rdparty_opennurbs_opennurbs_zlib_h
===================================================================
RCS file: patches/patch-src_3rdparty_opennurbs_opennurbs_zlib_h
diff -N patches/patch-src_3rdparty_opennurbs_opennurbs_zlib_h
--- patches/patch-src_3rdparty_opennurbs_opennurbs_zlib_h 11 Mar 2022 18:24:31 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,21 +0,0 @@
-Index: src/3rdparty/opennurbs/opennurbs_zlib.h
---- src/3rdparty/opennurbs/opennurbs_zlib.h.orig
-+++ src/3rdparty/opennurbs/opennurbs_zlib.h
-@@ -30,7 +30,7 @@
-
- #if !defined(Z_PREFIX)
- /* decorates zlib functions with a "z_" prefix to prevent symbol collision. */
--#define Z_PREFIX
-+//#define Z_PREFIX
- #endif
-
- #if !defined(MY_ZCALLOC)
-@@ -38,7 +38,7 @@
- //#define MY_ZCALLOC
- #endif
-
--#include "./zlib/zlib.h"
-+#include <zlib.h>
-
- ON_BEGIN_EXTERNC
- voidpf zcalloc (voidpf, unsigned, unsigned);
Index: patches/patch-src_3rdparty_qt-labs-qtscriptgenerator-5_5_0_qtbindings_qtbindingsbase_pri
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-src_3rdparty_qt-labs-qtscriptgenerator-5_5_0_qtbindings_qtbindingsbase_pri,v
diff -u -p -r1.2 patch-src_3rdparty_qt-labs-qtscriptgenerator-5_5_0_qtbindings_qtbindingsbase_pri
--- patches/patch-src_3rdparty_qt-labs-qtscriptgenerator-5_5_0_qtbindings_qtbindingsbase_pri 11 Mar 2022 18:24:31 -0000 1.2
+++ patches/patch-src_3rdparty_qt-labs-qtscriptgenerator-5_5_0_qtbindings_qtbindingsbase_pri 16 Nov 2025 19:01:45 -0000
@@ -1,3 +1,6 @@
+Build plugins/script/libqtscript_*.so as plugins (without a version
+number) and only for release.
+
Index: src/3rdparty/qt-labs-qtscriptgenerator-5.5.0/qtbindings/qtbindingsbase.pri
--- src/3rdparty/qt-labs-qtscriptgenerator-5.5.0/qtbindings/qtbindingsbase.pri.orig
+++ src/3rdparty/qt-labs-qtscriptgenerator-5.5.0/qtbindings/qtbindingsbase.pri
@@ -6,6 +9,6 @@ Index: src/3rdparty/qt-labs-qtscriptgene
QT += script
#CONFIG += plugin release build_all
-CONFIG += debug_and_release
-+CONFIG += release
++CONFIG += plugin release
GENERATEDCPP = $$PWD/../generated_cpp
TARGET=$$qtLibraryTarget($$TARGET)
Index: patches/patch-src_core_RDebug_cpp
===================================================================
RCS file: patches/patch-src_core_RDebug_cpp
diff -N patches/patch-src_core_RDebug_cpp
--- patches/patch-src_core_RDebug_cpp 14 Dec 2023 12:17:57 -0000 1.4
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-Forcefully disable the use of backtrace/backtrace_symbols which we don't
-have in our libc.
-
-Index: src/core/RDebug.cpp
---- src/core/RDebug.cpp.orig
-+++ src/core/RDebug.cpp
-@@ -37,7 +37,7 @@ QString RDebug::prefix;
- QMutex RDebug::mutexCounter;
-
- void RDebug::printBacktrace(const QString& prefix) {
--#if !defined(Q_OS_WIN) && !defined(Q_OS_ANDROID)
-+#if !defined(Q_OS_WIN) && !defined(Q_OS_ANDROID) && !defined(Q_OS_OPENBSD)
- void *array[20];
- size_t size;
- char **strings;
Index: patches/patch-src_core_RS_cpp
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-src_core_RS_cpp,v
diff -u -p -r1.4 patch-src_core_RS_cpp
--- patches/patch-src_core_RS_cpp 2 Jan 2023 12:40:09 -0000 1.4
+++ patches/patch-src_core_RS_cpp 16 Nov 2025 19:01:45 -0000
@@ -1,7 +1,7 @@
Index: src/core/RS.cpp
--- src/core/RS.cpp.orig
+++ src/core/RS.cpp
-@@ -177,6 +177,9 @@ QStringList RS::getDirectoryList(const QString& subDir
+@@ -179,6 +179,9 @@ QStringList RS::getDirectoryList(const QString& subDir
dirList.append(appDir + "/../Resources/" + subDirectory);
dirList.append(appDir + "/../../../" + subDirectory);
dirList.append(QDir::currentPath() + "/" + subDirectory);
Index: patches/patch-src_core_RSettings_cpp
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-src_core_RSettings_cpp,v
diff -u -p -r1.4 patch-src_core_RSettings_cpp
--- patches/patch-src_core_RSettings_cpp 29 Aug 2022 15:18:11 -0000 1.4
+++ patches/patch-src_core_RSettings_cpp 16 Nov 2025 19:01:45 -0000
@@ -1,7 +1,7 @@
Index: src/core/RSettings.cpp
--- src/core/RSettings.cpp.orig
+++ src/core/RSettings.cpp
-@@ -364,9 +364,13 @@ QString RSettings::getApplicationPath() {
+@@ -393,9 +393,13 @@ QString RSettings::getApplicationPath() {
}
#endif
Index: patches/patch-src_core_core_pro
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-src_core_core_pro,v
diff -u -p -r1.3 patch-src_core_core_pro
--- patches/patch-src_core_core_pro 29 Aug 2022 15:18:11 -0000 1.3
+++ patches/patch-src_core_core_pro 16 Nov 2025 19:01:45 -0000
@@ -1,7 +1,18 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
Index: src/core/core.pro
--- src/core/core.pro.orig
+++ src/core/core.pro
-@@ -309,7 +309,7 @@ RC_FILE = core.rc
+@@ -307,7 +307,7 @@ r_static_libs {
+ CONFIG += staticlib
+ }
+ else {
+- CONFIG += plugin
++ #CONFIG += plugin
+ }
+
+ QT += concurrent
+@@ -319,7 +319,7 @@ RC_FILE = core.rc
OTHER_FILES += core.dox math/math.dox
DEFINES += QCADCORE_LIBRARY
Index: patches/patch-src_entity_entity_pro
===================================================================
RCS file: patches/patch-src_entity_entity_pro
diff -N patches/patch-src_entity_entity_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_entity_entity_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,14 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
+Index: src/entity/entity.pro
+--- src/entity/entity.pro.orig
++++ src/entity/entity.pro
+@@ -135,7 +135,7 @@ r_static_libs {
+ CONFIG += staticlib
+ }
+ else {
+- CONFIG += plugin
++ #CONFIG += plugin
+ }
+ NAME = $${RLIBNAME}entity
+ TARGET = $${NAME}
Index: patches/patch-src_grid_grid_pro
===================================================================
RCS file: patches/patch-src_grid_grid_pro
diff -N patches/patch-src_grid_grid_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_grid_grid_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,14 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
+Index: src/grid/grid.pro
+--- src/grid/grid.pro.orig
++++ src/grid/grid.pro
+@@ -11,7 +11,7 @@ r_static_libs {
+ CONFIG += staticlib
+ }
+ else {
+- CONFIG += plugin
++ #CONFIG += plugin
+ }
+ TARGET = $${RLIBNAME}grid
+ LIBS += -l$${RLIBNAME}core
Index: patches/patch-src_gui_RRulerQt_cpp
===================================================================
RCS file: patches/patch-src_gui_RRulerQt_cpp
diff -N patches/patch-src_gui_RRulerQt_cpp
--- patches/patch-src_gui_RRulerQt_cpp 29 Aug 2022 15:18:11 -0000 1.3
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
-Index: src/gui/RRulerQt.cpp
---- src/gui/RRulerQt.cpp.orig
-+++ src/gui/RRulerQt.cpp
-@@ -26,6 +26,7 @@
-
- #include <QApplication>
- #include <QPainter>
-+#include <QPainterPath>
-
- /**
- * Constructor
Index: patches/patch-src_gui_gui_pro
===================================================================
RCS file: patches/patch-src_gui_gui_pro
diff -N patches/patch-src_gui_gui_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_gui_gui_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,14 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
+Index: src/gui/gui.pro
+--- src/gui/gui.pro.orig
++++ src/gui/gui.pro
+@@ -96,7 +96,7 @@ r_static_libs {
+ CONFIG += staticlib
+ }
+ else {
+- CONFIG += plugin
++ #CONFIG += plugin
+ }
+
+ LIBS += -l$${RLIBNAME}core -l$${RLIBNAME}entity
Index: patches/patch-src_operations_operations_pro
===================================================================
RCS file: patches/patch-src_operations_operations_pro
diff -N patches/patch-src_operations_operations_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_operations_operations_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,14 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
+Index: src/operations/operations.pro
+--- src/operations/operations.pro.orig
++++ src/operations/operations.pro
+@@ -43,7 +43,7 @@ r_static_libs {
+ CONFIG += staticlib
+ }
+ else {
+- CONFIG += plugin
++ #CONFIG += plugin
+ }
+ TARGET = $${RLIBNAME}operations
+ LIBS += \
Index: patches/patch-src_run_main_cpp
===================================================================
RCS file: patches/patch-src_run_main_cpp
diff -N patches/patch-src_run_main_cpp
--- patches/patch-src_run_main_cpp 14 Dec 2023 12:17:57 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,18 +0,0 @@
-don't overwrite the plugins directory: remove the applicationDir and add the pluginPaths
-
-Index: src/run/main.cpp
---- src/run/main.cpp.orig
-+++ src/run/main.cpp
-@@ -326,7 +326,11 @@ int main(int argc, char *argv[]) {
- qWarning() << "No plugin paths found";
- return -1;
- }
-- app->setLibraryPaths(pluginPaths);
-+
-+ app->removeLibraryPath(app->applicationDirPath());
-+ foreach (const QString &path, pluginPaths)
-+ app->addLibraryPath(path);
-+
-
- // make sure basic entities are initialized before loading plugins:
- RDimStyleData::initDefaults();
Index: patches/patch-src_scripting_ecmaapi_ecmaapi_pro
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-src_scripting_ecmaapi_ecmaapi_pro,v
diff -u -p -r1.2 patch-src_scripting_ecmaapi_ecmaapi_pro
--- patches/patch-src_scripting_ecmaapi_ecmaapi_pro 11 Mar 2022 18:24:31 -0000 1.2
+++ patches/patch-src_scripting_ecmaapi_ecmaapi_pro 16 Nov 2025 19:01:45 -0000
@@ -1,11 +1,13 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
Index: src/scripting/ecmaapi/ecmaapi.pro
--- src/scripting/ecmaapi/ecmaapi.pro.orig
+++ src/scripting/ecmaapi/ecmaapi.pro
-@@ -4,7 +4,6 @@ CONFIG += plugin
+@@ -1,6 +1,6 @@
+ include( ../../../shared.pri )
+ TEMPLATE = lib
+-CONFIG += plugin
++#CONFIG += plugin
TARGET = $${RLIBNAME}ecmaapi
CONFIG -= warn_on
CONFIG += warn_off
--CONFIG += precompile_header
- PRECOMPILED_HEADER = stable.h
- OTHER_FILES += ecmaapi.dox
- DEFINES += QCADECMAAPI_LIBRARY
Index: patches/patch-src_snap_snap_pro
===================================================================
RCS file: patches/patch-src_snap_snap_pro
diff -N patches/patch-src_snap_snap_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_snap_snap_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,14 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
+Index: src/snap/snap.pro
+--- src/snap/snap.pro.orig
++++ src/snap/snap.pro
+@@ -42,7 +42,7 @@ r_static_libs {
+ CONFIG += staticlib
+ }
+ else {
+- CONFIG += plugin
++ #CONFIG += plugin
+ }
+ TARGET = $${RLIBNAME}snap
+ LIBS += -l$${RLIBNAME}core -l$${RLIBNAME}grid -l$${RLIBNAME}entity
Index: patches/patch-src_spatialindex_spatialindex_pro
===================================================================
RCS file: patches/patch-src_spatialindex_spatialindex_pro
diff -N patches/patch-src_spatialindex_spatialindex_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_spatialindex_spatialindex_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,14 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
+Index: src/spatialindex/spatialindex.pro
+--- src/spatialindex/spatialindex.pro.orig
++++ src/spatialindex/spatialindex.pro
+@@ -11,7 +11,7 @@ r_static_libs {
+ CONFIG += staticlib
+ }
+ else {
+- CONFIG += plugin
++ #CONFIG += plugin
+ }
+ TARGET = $${RLIBNAME}spatialindex
+ LIBS += -l$${RLIBNAME}core -lspatialindexnavel
Index: patches/patch-src_stemmer_RStemmer_cpp
===================================================================
RCS file: patches/patch-src_stemmer_RStemmer_cpp
diff -N patches/patch-src_stemmer_RStemmer_cpp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_stemmer_RStemmer_cpp 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,15 @@
+Must use textproc/libstemmer, because qcad links to the port if it is
+installed.
+
+Index: src/stemmer/RStemmer.cpp
+--- src/stemmer/RStemmer.cpp.orig
++++ src/stemmer/RStemmer.cpp
+@@ -18,7 +18,7 @@
+ */
+ #include <QDebug>
+
+-#include "stemmer/include/libstemmer.h"
++#include <libstemmer.h>
+
+ #include "RStemmer.h"
+
Index: patches/patch-src_stemmer_stemmer_pro
===================================================================
RCS file: patches/patch-src_stemmer_stemmer_pro
diff -N patches/patch-src_stemmer_stemmer_pro
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_stemmer_stemmer_pro 16 Nov 2025 19:01:45 -0000
@@ -0,0 +1,22 @@
+CONFIG -= plugin if shared_app.pri links to it.
+
+Must use textproc/libstemmer, because qcad links to the port if it is
+installed.
+
+Index: src/stemmer/stemmer.pro
+--- src/stemmer/stemmer.pro.orig
++++ src/stemmer/stemmer.pro
+@@ -5,11 +5,11 @@ HEADERS = \
+ RStemmer.h
+
+ TEMPLATE = lib
+-CONFIG += plugin
++#CONFIG += plugin
+ TARGET = $${RLIBNAME}stemmer
+ LIBS += -lstemmer
+ OTHER_FILES += stemmer.dox
+ DEFINES += QCADSTEMMER_LIBRARY
+ RC_FILE = stemmer.rc
+
+-POST_TARGETDEPS += $$PWD/../../$$ROUTDIR/$${RLIBPRE}stemmer$${RLIBPOST}
++#POST_TARGETDEPS += $$PWD/../../$$ROUTDIR/$${RLIBPRE}stemmer$${RLIBPOST}
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/cad/qcad/pkg/PLIST,v
diff -u -p -r1.14 PLIST
--- pkg/PLIST 14 Dec 2023 12:17:57 -0000 1.14
+++ pkg/PLIST 16 Nov 2025 19:01:46 -0000
@@ -11,7 +11,6 @@
@lib lib/libqcadspatialindex.so.${LIBqcadspatialindex_VERSION}
@lib lib/libqcadstemmer.so.${LIBqcadstemmer_VERSION}
@lib lib/libspatialindexnavel.so.${LIBspatialindexnavel_VERSION}
-@static-lib lib/libstemmer.a
@man man/man1/qcad.1
share/applications/qcad.desktop
share/examples/qcad/
@@ -547,16 +546,16 @@ share/qcad/plugins/printsupport/
@so share/qcad/plugins/printsupport/libcupsprintersupport.so
share/qcad/plugins/printsupport/readme.txt
share/qcad/plugins/script/
-@lib share/qcad/plugins/script/libqtscript_core.so.1.0
-@lib share/qcad/plugins/script/libqtscript_gui.so.1.0
-@lib share/qcad/plugins/script/libqtscript_network.so.1.0
-@lib share/qcad/plugins/script/libqtscript_opengl.so.1.0
-@lib share/qcad/plugins/script/libqtscript_printsupport.so.1.0
-@lib share/qcad/plugins/script/libqtscript_sql.so.1.0
-@lib share/qcad/plugins/script/libqtscript_uitools.so.1.0
-@lib share/qcad/plugins/script/libqtscript_widgets.so.1.0
-@lib share/qcad/plugins/script/libqtscript_xml.so.1.0
-@lib share/qcad/plugins/script/libqtscript_xmlpatterns.so.1.0
+@so share/qcad/plugins/script/libqtscript_core.so
+@so share/qcad/plugins/script/libqtscript_gui.so
+@so share/qcad/plugins/script/libqtscript_network.so
+@so share/qcad/plugins/script/libqtscript_opengl.so
+@so share/qcad/plugins/script/libqtscript_printsupport.so
+@so share/qcad/plugins/script/libqtscript_sql.so
+@so share/qcad/plugins/script/libqtscript_uitools.so
+@so share/qcad/plugins/script/libqtscript_widgets.so
+@so share/qcad/plugins/script/libqtscript_xml.so
+@so share/qcad/plugins/script/libqtscript_xmlpatterns.so
share/qcad/plugins/sqldrivers/
@so share/qcad/plugins/sqldrivers/libqsqlite.so
share/qcad/plugins/sqldrivers/readme.txt
@@ -1735,9 +1734,19 @@ share/qcad/scripts/Draw/Arc/ArcTPR/ArcTP
share/qcad/scripts/Draw/Arc/ArcTPR/ArcTPRInit.js
share/qcad/scripts/Draw/Arc/ArcTPR/Tests/
share/qcad/scripts/Draw/Arc/ArcTPR/Tests/ArcTPRTest00.js
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/ArcTPRTest01.js
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/ArcTPRTest02.js
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/ArcTPRTest03.js
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/ArcTPRTest04.js
share/qcad/scripts/Draw/Arc/ArcTPR/Tests/actual/
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/data/
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/data/four_solutions.dxf
share/qcad/scripts/Draw/Arc/ArcTPR/Tests/required/
share/qcad/scripts/Draw/Arc/ArcTPR/Tests/required/ArcTPRTest00_000.dxf
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/required/ArcTPRTest01_000.dxf
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/required/ArcTPRTest02_000.dxf
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/required/ArcTPRTest03_000.dxf
+share/qcad/scripts/Draw/Arc/ArcTPR/Tests/required/ArcTPRTest04_000.dxf
share/qcad/scripts/Draw/Arc/ArcTPR/doc/
share/qcad/scripts/Draw/Arc/ArcTPR/doc/ArcTPR.png
share/qcad/scripts/Draw/Arc/ArcTPR/doc/ArcTPR_bg.html
@@ -1820,18 +1829,32 @@ share/qcad/scripts/Draw/Arc/ArcTangentia
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_nl.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_pl.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_bg.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_cs.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_da.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_de.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_en.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_es.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_et.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_fi.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_fr.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_hu.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_id.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_it.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_ja.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_lt.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_lv.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_nl.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_pl.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_pt.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_ro.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_ru.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_sk.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_sl.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_sv.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_tr.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_uk.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_zh_CN.html
+share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_proc_zh_TW.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_pt.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_ru.html
share/qcad/scripts/Draw/Arc/ArcTangential/doc/ArcTangential_sl.html
@@ -2167,12 +2190,14 @@ share/qcad/scripts/Draw/Circle/Circle3T/
share/qcad/scripts/Draw/Circle/Circle3T/Tests/Circle3TTest01.js
share/qcad/scripts/Draw/Circle/Circle3T/Tests/Circle3TTest02.js
share/qcad/scripts/Draw/Circle/Circle3T/Tests/Circle3TTest03.js
+share/qcad/scripts/Draw/Circle/Circle3T/Tests/Circle3TTest04.js
share/qcad/scripts/Draw/Circle/Circle3T/Tests/actual/
share/qcad/scripts/Draw/Circle/Circle3T/Tests/required/
share/qcad/scripts/Draw/Circle/Circle3T/Tests/required/Circle3TTest00_000.dxf
share/qcad/scripts/Draw/Circle/Circle3T/Tests/required/Circle3TTest01_000.dxf
share/qcad/scripts/Draw/Circle/Circle3T/Tests/required/Circle3TTest02_000.dxf
share/qcad/scripts/Draw/Circle/Circle3T/Tests/required/Circle3TTest03_000.dxf
+share/qcad/scripts/Draw/Circle/Circle3T/Tests/required/Circle3TTest04_000.dxf
share/qcad/scripts/Draw/Circle/Circle3T/doc/
share/qcad/scripts/Draw/Circle/Circle3T/doc/Circle3T.png
share/qcad/scripts/Draw/Circle/Circle3T/doc/Circle3T_bg.html
@@ -3351,59 +3376,6 @@ share/qcad/scripts/Draw/Ellipse/EllipseD
share/qcad/scripts/Draw/Ellipse/EllipseDD/doc/EllipseDD_ru.html
share/qcad/scripts/Draw/Ellipse/EllipseDD/doc/EllipseDD_sl.html
share/qcad/scripts/Draw/Ellipse/EllipseDD/doc/EllipseDD_sv.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/EllipseInscribedQuad-inverse.svg
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/EllipseInscribedQuad.js
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/EllipseInscribedQuad.svg
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/EllipseInscribedQuadInit.js
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/Tests/
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/Tests/EllipseInscribedQuadTest00.js
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/Tests/actual/
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/Tests/required/
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/Tests/required/EllipseInscribedQuadTest00_000.dxf
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad.png
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_bg.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_da.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_de.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_bg.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_da.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_de.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_en.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_es.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_fr.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_it.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_ja.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_nl.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_pl.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_pt.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_ru.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_sl.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_desc_sv.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_en.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_es.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_fr.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_it.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_ja.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_nl.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_pl.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_bg.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_da.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_de.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_en.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_es.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_fr.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_it.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_ja.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_nl.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_pl.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_pt.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_ru.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_proc_sv.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_pt.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_ru.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_sl.html
-share/qcad/scripts/Draw/Ellipse/EllipseInscribedQuad/doc/EllipseInscribedQuad_sv.html
share/qcad/scripts/Draw/Ellipse/EllipseOffset/
share/qcad/scripts/Draw/Ellipse/EllipseOffset/EllipseOffset-inverse.svg
share/qcad/scripts/Draw/Ellipse/EllipseOffset/EllipseOffset.js
@@ -4607,10 +4579,14 @@ share/qcad/scripts/Draw/Polyline/DrawPol
share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/
share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/DrawPolylineTest00.js
share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/DrawPolylineTest01.js
+share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/DrawPolylineTest02.js
+share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/DrawPolylineTest03.js
share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/actual/
share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/required/
share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/required/DrawPolylineTest00_000.dxf
share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/required/DrawPolylineTest01_000.dxf
+share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/required/DrawPolylineTest02_000.dxf
+share/qcad/scripts/Draw/Polyline/DrawPolyline/Tests/required/DrawPolylineTest03_000.dxf
share/qcad/scripts/Draw/Polyline/DrawPolyline/Undo-inverse.svg
share/qcad/scripts/Draw/Polyline/DrawPolyline/Undo.svg
share/qcad/scripts/Draw/Polyline/DrawPolyline/doc/
@@ -4915,10 +4891,42 @@ share/qcad/scripts/Draw/Shape/ShapeRecta
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest00.js
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest01.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest02.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest03.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest04.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest05.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest06.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest07.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest08.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest09.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest10.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest11.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest12.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest13.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest14.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest15.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest16.js
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/ShapeRectanglePPTest17.js
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/actual/
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest00_000.dxf
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest01_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest02_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest03_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest04_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest05_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest06_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest07_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest08_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest09_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest10_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest11_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest12_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest13_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest14_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest15_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest16_000.dxf
+share/qcad/scripts/Draw/Shape/ShapeRectanglePP/Tests/required/ShapeRectanglePPTest17_000.dxf
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/doc/
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/doc/ShapeRectanglePP.png
share/qcad/scripts/Draw/Shape/ShapeRectanglePP/doc/ShapeRectanglePP_bg.html
@@ -7819,6 +7827,9 @@ share/qcad/scripts/Misc/Examples/ExMinim
share/qcad/scripts/Misc/Examples/ExMinimal2/ExMinimal2.ui
share/qcad/scripts/Misc/Examples/Examples.js
share/qcad/scripts/Misc/Examples/IOExamples/
+share/qcad/scripts/Misc/Examples/IOExamples/ExCsvExport/
+share/qcad/scripts/Misc/Examples/IOExamples/ExCsvExport/ExCsvExport.js
+share/qcad/scripts/Misc/Examples/IOExamples/ExCsvExport/ExCsvExportInit.js
share/qcad/scripts/Misc/Examples/IOExamples/ExDumpPolyline/
share/qcad/scripts/Misc/Examples/IOExamples/ExDumpPolyline/ExDumpPolyline.js
share/qcad/scripts/Misc/Examples/IOExamples/ExDumpPolyline/points.txt
@@ -8207,6 +8218,8 @@ share/qcad/scripts/Misc/MiscInformation/
share/qcad/scripts/Misc/MiscInformation/InfoCentroids/InfoCentroidsListener/
share/qcad/scripts/Misc/MiscInformation/InfoCentroids/InfoCentroidsListener/InfoCentroidsListener.js
share/qcad/scripts/Misc/MiscInformation/InfoCentroids/InfoCentroidsListener/InfoCentroidsListener.svg
+share/qcad/scripts/Misc/MiscInformation/InfoCentroids/InfoCentroidsListener/InfoCentroidsListenerActive.svg
+share/qcad/scripts/Misc/MiscInformation/InfoCentroids/InfoCentroidsListener/InfoCentroidsListenerInactive.svg
share/qcad/scripts/Misc/MiscInformation/InfoCentroids/InfoCentroidsListener/InfoCentroidsListenerInit.js
share/qcad/scripts/Misc/MiscInformation/InfoCentroids/InfoSumCentroidsWeighted/
share/qcad/scripts/Misc/MiscInformation/InfoCentroids/InfoSumCentroidsWeighted/InfoSumCentroidsWeighted-inverse.svg
@@ -8236,9 +8249,12 @@ share/qcad/scripts/Misc/MiscSelect/
share/qcad/scripts/Misc/MiscSelect/MiscSelect.js
share/qcad/scripts/Misc/MiscSelect/SelectByColor/
share/qcad/scripts/Misc/MiscSelect/SelectByColor/SelectByColor.js
+share/qcad/scripts/Misc/MiscSelect/SelectByColor/SelectByColor.svg
share/qcad/scripts/Misc/MiscSelect/SelectByColor/SelectByColorInit.js
share/qcad/scripts/Misc/MiscSelect/SelectByHandle/
+share/qcad/scripts/Misc/MiscSelect/SelectByHandle/SelectByHandle-inverse.svg
share/qcad/scripts/Misc/MiscSelect/SelectByHandle/SelectByHandle.js
+share/qcad/scripts/Misc/MiscSelect/SelectByHandle/SelectByHandle.svg
share/qcad/scripts/Misc/MiscSelect/SelectByHandle/SelectByHandleDialog.ui
share/qcad/scripts/Misc/MiscSelect/SelectByHandle/SelectByHandleInit.js
share/qcad/scripts/Misc/MiscSelect/dir/
@@ -8260,6 +8276,7 @@ share/qcad/scripts/Misc/Tutorials/Comman
share/qcad/scripts/Misc/Tutorials/CommandLineTools/dir/
share/qcad/scripts/Misc/Tutorials/CreatingNewTool/
share/qcad/scripts/Misc/Tutorials/CreatingNewTool/CreatingNewTool.dox
+share/qcad/scripts/Misc/Tutorials/CreatingNewTool/ExThreePoints.js
share/qcad/scripts/Misc/Tutorials/ImportantClasses.dox
share/qcad/scripts/Misc/Tutorials/LibraryBrowserScripts/
share/qcad/scripts/Misc/Tutorials/LibraryBrowserScripts/CubeCuttingOut.js
@@ -8281,14 +8298,13 @@ share/qcad/scripts/Misc/Tutorials/Tutori
share/qcad/scripts/Misc/Tutorials/dir/
share/qcad/scripts/Misc/dir/
share/qcad/scripts/Misc/doc/
-share/qcad/scripts/Misc/doc/Examples_de.html
-share/qcad/scripts/Misc/doc/Examples_en.html
-share/qcad/scripts/Misc/doc/Examples_ja.html
share/qcad/scripts/Misc/doc/Misc.png
share/qcad/scripts/Misc/doc/Misc_da.html
share/qcad/scripts/Misc/doc/Misc_de.html
share/qcad/scripts/Misc/doc/Misc_en.html
+share/qcad/scripts/Misc/doc/Misc_es.html
share/qcad/scripts/Misc/doc/Misc_ja.html
+share/qcad/scripts/Misc/doc/Misc_pl.html
share/qcad/scripts/Misc/doc/Misc_ru.html
share/qcad/scripts/Misc/doc/Misc_sl.html
share/qcad/scripts/Modify/
@@ -9263,6 +9279,8 @@ share/qcad/scripts/Modify/OffsetThrough/
share/qcad/scripts/Modify/OffsetThrough/OffsetThroughInit.js
share/qcad/scripts/Modify/OffsetThrough/doc/
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough.png
+share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_bg.html
+share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_da.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_de.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_desc_bg.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_desc_da.html
@@ -9283,6 +9301,8 @@ share/qcad/scripts/Modify/OffsetThrough/
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_fr.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_it.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_ja.html
+share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_nl.html
+share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_pl.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_proc_bg.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_proc_da.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_proc_de.html
@@ -9297,7 +9317,9 @@ share/qcad/scripts/Modify/OffsetThrough/
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_proc_ru.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_proc_sv.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_pt.html
+share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_ru.html
share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_sl.html
+share/qcad/scripts/Modify/OffsetThrough/doc/OffsetThrough_sv.html
share/qcad/scripts/Modify/Reverse/
share/qcad/scripts/Modify/Reverse/Reverse-inverse.svg
share/qcad/scripts/Modify/Reverse/Reverse.js
@@ -9788,6 +9810,7 @@ share/qcad/scripts/Modify/Translate/doc/
share/qcad/scripts/Modify/Translate/doc/Translate_sl.html
share/qcad/scripts/Modify/Translate/doc/Translate_sv.html
share/qcad/scripts/Modify/TranslateRotate/
+share/qcad/scripts/Modify/TranslateRotate/PreferencesPage.ui
share/qcad/scripts/Modify/TranslateRotate/Tests/
share/qcad/scripts/Modify/TranslateRotate/Tests/TranslateRotateTest00.js
share/qcad/scripts/Modify/TranslateRotate/Tests/TranslateRotateTest01.js
@@ -9806,6 +9829,7 @@ share/qcad/scripts/Modify/TranslateRotat
share/qcad/scripts/Modify/TranslateRotate/TranslateRotateDialog.svg
share/qcad/scripts/Modify/TranslateRotate/TranslateRotateDialog.ui
share/qcad/scripts/Modify/TranslateRotate/TranslateRotateInit.js
+share/qcad/scripts/Modify/TranslateRotate/TranslateRotateNoDialog.ui
share/qcad/scripts/Modify/TranslateRotate/doc/
share/qcad/scripts/Modify/TranslateRotate/doc/TranslateRotate.png
share/qcad/scripts/Modify/TranslateRotate/doc/TranslateRotateDialog.png
@@ -11926,24 +11950,6 @@ share/qcad/scripts/View/LinetypeMode/doc
share/qcad/scripts/View/LinetypeMode/doc/LinetypeMode_ru.html
share/qcad/scripts/View/LinetypeMode/doc/LinetypeMode_sl.html
share/qcad/scripts/View/LinetypeMode/doc/LinetypeMode_sv.html
-share/qcad/scripts/View/OptionsToolBarFocus/
-share/qcad/scripts/View/OptionsToolBarFocus/OptionsToolBarFocus.js
-share/qcad/scripts/View/OptionsToolBarFocus/OptionsToolBarFocusInit.js
-share/qcad/scripts/View/OptionsToolBarFocus/doc/
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_bg.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_da.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_de.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_en.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_es.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_fr.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_it.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_ja.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_nl.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_pl.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_pt.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_ru.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_sl.html
-share/qcad/scripts/View/OptionsToolBarFocus/doc/OptionsToolBarFocus_sv.html
share/qcad/scripts/View/ShowToolDialog/
share/qcad/scripts/View/ShowToolDialog/ShowToolDialog.js
share/qcad/scripts/View/ToggleGrid/
@@ -12480,6 +12486,7 @@ share/qcad/scripts/Widgets/LayerList/lay
share/qcad/scripts/Widgets/LayerList/layerstatus_11.svg
share/qcad/scripts/Widgets/MenuBar/
share/qcad/scripts/Widgets/MenuBar/MenuBar.js
+share/qcad/scripts/Widgets/MenuBar/MenuBarInit.js
share/qcad/scripts/Widgets/MenuBar/PreferencesPage.ui
share/qcad/scripts/Widgets/MouseDisplay/
share/qcad/scripts/Widgets/MouseDisplay/Mouse-inverse.svg
@@ -12712,6 +12719,7 @@ share/qcad/scripts/lib/sprintf2/sprintf2
share/qcad/scripts/library.js
share/qcad/scripts/map.js
share/qcad/scripts/mimetype.png
+share/qcad/scripts/org.qcad.QCAD.png
share/qcad/scripts/qcad_icon.png
share/qcad/scripts/qcad_icon.svg
share/qcad/scripts/scripts.dox
@@ -12887,13 +12895,17 @@ share/qcad/ts/assistant_de.qm
share/qcad/ts/assistant_en.qm
share/qcad/ts/assistant_es.qm
share/qcad/ts/assistant_fr.qm
+share/qcad/ts/assistant_hr.qm
share/qcad/ts/assistant_hu.qm
share/qcad/ts/assistant_ja.qm
share/qcad/ts/assistant_ko.qm
+share/qcad/ts/assistant_nl.qm
share/qcad/ts/assistant_pl.qm
+share/qcad/ts/assistant_pt_BR.qm
share/qcad/ts/assistant_ru.qm
share/qcad/ts/assistant_sk.qm
share/qcad/ts/assistant_sl.qm
+share/qcad/ts/assistant_tr.qm
share/qcad/ts/assistant_uk.qm
share/qcad/ts/assistant_zh_CN.qm
share/qcad/ts/assistant_zh_TW.qm
@@ -12905,13 +12917,16 @@ share/qcad/ts/designer_de.qm
share/qcad/ts/designer_en.qm
share/qcad/ts/designer_es.qm
share/qcad/ts/designer_fr.qm
+share/qcad/ts/designer_hr.qm
share/qcad/ts/designer_hu.qm
share/qcad/ts/designer_ja.qm
share/qcad/ts/designer_ko.qm
+share/qcad/ts/designer_nl.qm
share/qcad/ts/designer_pl.qm
share/qcad/ts/designer_ru.qm
share/qcad/ts/designer_sk.qm
share/qcad/ts/designer_sl.qm
+share/qcad/ts/designer_tr.qm
share/qcad/ts/designer_uk.qm
share/qcad/ts/designer_zh_CN.qm
share/qcad/ts/designer_zh_TW.qm
@@ -12923,13 +12938,18 @@ share/qcad/ts/linguist_de.qm
share/qcad/ts/linguist_en.qm
share/qcad/ts/linguist_es.qm
share/qcad/ts/linguist_fr.qm
+share/qcad/ts/linguist_hr.qm
share/qcad/ts/linguist_hu.qm
+share/qcad/ts/linguist_it.qm
share/qcad/ts/linguist_ja.qm
share/qcad/ts/linguist_ko.qm
+share/qcad/ts/linguist_nl.qm
share/qcad/ts/linguist_pl.qm
share/qcad/ts/linguist_ru.qm
share/qcad/ts/linguist_sk.qm
share/qcad/ts/linguist_sl.qm
+share/qcad/ts/linguist_sv.qm
+share/qcad/ts/linguist_tr.qm
share/qcad/ts/linguist_uk.qm
share/qcad/ts/linguist_zh_CN.qm
share/qcad/ts/linguist_zh_TW.qm
@@ -13056,10 +13076,12 @@ share/qcad/ts/qt_es.qm
share/qcad/ts/qt_fa.qm
share/qcad/ts/qt_fi.qm
share/qcad/ts/qt_fr.qm
+share/qcad/ts/qt_gd.qm
share/qcad/ts/qt_gl.qm
share/qcad/ts/qt_he.qm
share/qcad/ts/qt_help_ar.qm
share/qcad/ts/qt_help_bg.qm
+share/qcad/ts/qt_help_ca.qm
share/qcad/ts/qt_help_cs.qm
share/qcad/ts/qt_help_da.qm
share/qcad/ts/qt_help_de.qm
@@ -13067,28 +13089,40 @@ share/qcad/ts/qt_help_en.qm
share/qcad/ts/qt_help_es.qm
share/qcad/ts/qt_help_fr.qm
share/qcad/ts/qt_help_gl.qm
+share/qcad/ts/qt_help_hr.qm
share/qcad/ts/qt_help_hu.qm
share/qcad/ts/qt_help_it.qm
share/qcad/ts/qt_help_ja.qm
share/qcad/ts/qt_help_ko.qm
+share/qcad/ts/qt_help_nl.qm
+share/qcad/ts/qt_help_nn.qm
share/qcad/ts/qt_help_pl.qm
+share/qcad/ts/qt_help_pt_BR.qm
share/qcad/ts/qt_help_ru.qm
share/qcad/ts/qt_help_sk.qm
share/qcad/ts/qt_help_sl.qm
+share/qcad/ts/qt_help_tr.qm
share/qcad/ts/qt_help_uk.qm
share/qcad/ts/qt_help_zh_CN.qm
share/qcad/ts/qt_help_zh_TW.qm
+share/qcad/ts/qt_hr.qm
share/qcad/ts/qt_hu.qm
share/qcad/ts/qt_it.qm
share/qcad/ts/qt_ja.qm
share/qcad/ts/qt_ko.qm
share/qcad/ts/qt_lt.qm
+share/qcad/ts/qt_lv.qm
+share/qcad/ts/qt_nl.qm
+share/qcad/ts/qt_nn.qm
share/qcad/ts/qt_pl.qm
share/qcad/ts/qt_pt.qm
+share/qcad/ts/qt_pt_BR.qm
+share/qcad/ts/qt_pt_PT.qm
share/qcad/ts/qt_ru.qm
share/qcad/ts/qt_sk.qm
share/qcad/ts/qt_sl.qm
share/qcad/ts/qt_sv.qm
+share/qcad/ts/qt_tr.qm
share/qcad/ts/qt_uk.qm
share/qcad/ts/qt_zh_CN.qm
share/qcad/ts/qt_zh_TW.qm
@@ -13100,22 +13134,28 @@ share/qcad/ts/qtbase_da.qm
share/qcad/ts/qtbase_de.qm
share/qcad/ts/qtbase_en.qm
share/qcad/ts/qtbase_es.qm
+share/qcad/ts/qtbase_fa.qm
share/qcad/ts/qtbase_fi.qm
share/qcad/ts/qtbase_fr.qm
share/qcad/ts/qtbase_gd.qm
share/qcad/ts/qtbase_he.qm
+share/qcad/ts/qtbase_hr.qm
share/qcad/ts/qtbase_hu.qm
share/qcad/ts/qtbase_it.qm
share/qcad/ts/qtbase_ja.qm
share/qcad/ts/qtbase_ko.qm
share/qcad/ts/qtbase_lv.qm
share/qcad/ts/qtbase_nl.qm
+share/qcad/ts/qtbase_nn.qm
share/qcad/ts/qtbase_pl.qm
share/qcad/ts/qtbase_pt.qm
+share/qcad/ts/qtbase_pt_BR.qm
share/qcad/ts/qtbase_ru.qm
share/qcad/ts/qtbase_sk.qm
+share/qcad/ts/qtbase_tr.qm
share/qcad/ts/qtbase_uk.qm
share/qcad/ts/qtbase_zh_CN.qm
+share/qcad/ts/qtbase_zh_TW.qm
share/qcad/ts/qtconfig_hu.qm
share/qcad/ts/qtconfig_ja.qm
share/qcad/ts/qtconfig_ko.qm
update cad/qcad 3.32.4.0