Commit Graph

233 Commits

Author SHA1 Message Date
Roman Telezhynskyi
171b3be090 Backward compatibility for type qsizetype. 2023-02-09 17:27:43 +02:00
Roman Telezhynskyi
af8505f468 Remove Q_DISABLE_MOVE macro.
Q_DISABLE_MOVE was deprecated.
2023-02-09 17:24:29 +02:00
Roman Telezhynskyi
dee3c593de Improve stable.h. 2023-02-09 17:24:02 +02:00
Roman Telezhynskyi
6e499b7245 Remove missing in Qt6 headers. 2023-02-09 17:24:02 +02:00
Roman Telezhynskyi
3392ea560e Enable full static.h on Windows. 2023-01-17 16:48:31 +03:00
Roman Telezhynskyi
895b02ef0d Move 'Precompiled headers' group to buildconfig. 2023-01-10 13:27:56 +02:00
Roman Telezhynskyi
d6e3dfcbb3 Property to disable the use of precompiled headers. 2023-01-10 13:27:56 +02:00
Roman Telezhynskyi
2ba1a5db5e Improve stable.h. 2023-01-10 13:27:56 +02:00
Roman Telezhynskyi
33b2fb5ed0 Fix GCC warnings. 2023-01-05 15:14:13 +02:00
Roman Telezhynskyi
964b4c0aea Optimize dependencies with Export item. 2023-01-05 12:25:29 +02:00
Roman Telezhynskyi
2788e0a136 Successful build of test binaries. 2023-01-04 21:00:11 +02:00
Roman Telezhynskyi
eb38a1c26f Successful build of main binaries. 2023-01-04 18:31:50 +02:00
Roman Telezhynskyi
93be6f3771 error C2397: conversion from 'int' to 'double' requires a narrowing conversion. 2022-11-11 20:56:56 +02:00
Roman Telezhynskyi
890486f2db Fix build on Windows. 2022-11-10 16:16:57 +02:00
Roman Telezhynskyi
5f62b1bd52 QSharedPointer::get() was introduced in Qt 5.11. 2022-11-10 12:05:06 +02:00
Roman Telezhynskyi
52c8e47e60 New option "Seam line on drawing".
There are two ways to export a sew line to DXF-AAMA: on Draw layer or Sew line layer. The second is not standard, but preferable way for most CAD systems.
2022-11-04 17:16:50 +02:00
Roman Telezhynskyi
bd10a78f55 Successful compilation. 2022-10-28 16:16:13 +03:00
Roman Telezhynskyi
4a89a0892f Introduce new macro Q_DISABLE_ASSIGN_MOVE. 2022-10-08 15:22:17 +03:00
Roman Telezhynskyi
576e3bbbf2 Refactoring. 2022-10-07 16:04:07 +03:00
Roman Telezhynskyi
fb85ec4eec Inconsistent $MEASUREMENT/$INSUNITS variables. 2022-09-20 11:50:38 +03:00
Roman Telezhynskyi
a13f13e3fc Refactoring.
Optimize includes.
2022-08-22 11:34:02 +03:00
Roman Telezhynskyi
003c9bf33f Fix build. 2022-08-17 15:51:35 +03:00
Roman Telezhynskyi
5b9c1b1d55 Port changes from mainstream. 2022-08-13 19:27:47 +03:00
Roman Telezhynskyi
0ab0edc654 Refactoring. 2022-08-12 18:50:22 +03:00
Roman Telezhynskyi
4e07172a6f Cppcheck warnings. 2022-08-08 15:25:14 +03:00
Roman Telezhynskyi
29bd9b6497 Implementation of C++14's make_unique for C++11 compilers. 2022-02-17 15:45:41 +02:00
Roman Telezhynskyi
eae539dc4a Add missing header. 2022-02-17 14:44:53 +02:00
Roman Telezhynskyi
95e115faca make_unique available since C++14. 2022-02-17 13:04:51 +02:00
Roman Telezhynskyi
6f55659c16 Fix build. 2022-02-08 20:40:33 +02:00
Roman Telezhynskyi
5b3bcdf1af Remove unused DRW_Class::parseCode() method. 2022-02-07 14:55:31 +02:00
Roman Telezhynskyi
adea504bc1 protect vector<>.reserve() calls
Malformed or suspicious input files can cause std::exceptions by
vector<>.reserve() calls. Now they are caught to avoid crashes or other
vulnerabilities.
2022-02-07 14:52:41 +02:00
Roman Telezhynskyi
1639603551 Added NULL check for hatch code 93. 2022-02-07 11:49:20 +02:00
Roman Telezhynskyi
a3e1cc8639 Fix build with Qt 5.6. 2022-01-29 14:57:21 +02:00
Roman Telezhynskyi
1b188bf414 Compatibility issues. 2022-01-29 10:59:02 +02:00
Roman Telezhynskyi
f28660e0ea Clang warnings. 2021-11-24 14:50:31 +02:00
Roman Telezhynskyi
612306bbd8 Cppcheck warning. 2021-11-24 14:25:47 +02:00
Roman Telezhynskyi
b9958e9953 fixed LibreCAD 2 issue #1371, read failed with binary DXF 2021-11-23 14:48:30 +02:00
Roman Telezhynskyi
0db9e1f728 Class to handle plot settings object entries. 2021-11-23 14:43:26 +02:00
Roman Telezhynskyi
c6bd3ae727 Fix typo. 2021-11-23 13:21:24 +02:00
Roman Telezhynskyi
11a7fc2652 viewport - target xyz. 2021-11-23 13:16:58 +02:00
Roman Telezhynskyi
6a219c5ed4 Port set version bug from solvespace fork and cleanup version handling in DRW_TextCodec.
One of the most intrusive changes in QGIS' fork was that the debugging code was replaced with hardcoded changes to redirect the output to QGIS' internal logging mechanism. In this PR I've setup an interface to allow clients to create custom output debugging classes and assign these to be used by the library.

This will allow me to remove all the related downstream changes in QGIS' fork and re-sync these files back to upstream.
Interface for debug printers.
2021-11-23 13:12:11 +02:00
Roman Telezhynskyi
a8d8fa0946 Modernize debugging. 2021-11-23 11:28:54 +02:00
Roman Telezhynskyi
642fbe815d Use ununordered_map instead of map
Should result in a performance boost when reading large files.
2021-11-23 11:15:11 +02:00
Roman Telezhynskyi
c51d9d5b30 More modernization and cleanups. 2021-11-22 19:28:51 +02:00
Roman Telezhynskyi
5f6445cf93 Read extrusion tags for dimension entities
Dimension entities support DXF codes 210, 220, 230 and and DRW_Dimension
already had a extPoint member, but the tags were never used when
parsing.
2021-11-22 18:53:33 +02:00
Roman Telezhynskyi
b18f09d86e DRW_Coord: Simplify constructor. 2021-11-22 18:48:47 +02:00
Roman Telezhynskyi
c7fc0b8dcb Misc. typos 2021-11-22 18:44:44 +02:00
Roman Telezhynskyi
1b4dfc7988 Misc typos: length. 2021-11-22 18:39:20 +02:00
Roman Telezhynskyi
47e0e3d0f3 fixed heap use after free vulnerability CVE-2021-21900
as reported in TALOS-2021-1351 / CVE-2021-21900,
DRW_TableEntry::parseCode had the potential to trigger an use after free exception with a malformed DXF file.
2021-11-22 18:22:27 +02:00
Roman Telezhynskyi
b861d6a28e GCC warnings. 2021-09-25 17:18:33 +03:00