Commit Graph

79 Commits

Author SHA1 Message Date
Chris Hennes
178c8ee56b App/Toponaming: Add original StringHasher
Also includes StringIDPy. This is realthunder's original code, it does not compile in the current codebase yet.
2023-05-11 14:34:35 -05:00
Chris Hennes
d871779299 App/Toponaming: Add tests to MappedElement 2023-03-24 10:05:09 -05:00
Chris Hennes
320d06239e App/Toponaming: Add MappedElement class 2023-03-23 09:46:32 -05:00
Chris Hennes
d0f46f3fd4 Merge pull request #8923 from Ondsel-Development/toponaming-p1-4
[Core] Create `ElementMap.h` and tests
2023-03-23 09:40:56 -05:00
Ajinkya Dahale
776e940006 [Core] Create ElementMap and tests
Test is a dummy for now. `ElementMap.h` only contains const values.
2023-03-22 21:53:23 +05:30
wmayer
13a6c3d2dc Core: move image plane to core system 2023-03-22 13:44:00 +01:00
Pesc0
9200160502 Added MappedName class 2023-03-17 01:42:53 +01:00
Chris Hennes
ba34c6fb87 App: Add IndexedName class
Ported from development/toponaming.
2023-03-12 11:03:52 -05:00
berniev
6c9d7ebc7a an example of using constexpr array for data
simplifies code and removes the need for a class.
2023-03-07 23:22:44 +01:00
wmayer
4b4718dd17 App: using fmtlib causes a linking failure together with boost's graphviz classes
To fix this failure a workaround is move the graphviz handling from Document.cpp to a separate source file
See also: https://github.com/FreeCAD/FreeCAD/pull/8350
2023-03-04 19:08:11 +01:00
wmayer
92b1774961 App: move Color class to its own sources 2023-02-26 10:11:53 +01:00
wmayer
62c05414d1 App: split tokenizer handling of ExpressionCompleter to its own class 2023-02-26 09:00:27 +01:00
Chris Hennes
58061500f9 Core: Add libfmt via FetchContent 2023-02-18 12:43:48 -06:00
wmayer
1a1f814a71 App: refactor license handling to reduce code duplication 2023-02-12 19:57:41 +01:00
berniev
1848f57908 Improve unit testing directory structure
Separate Qt tests and gtest tests
Add a basic shadow of the project structure
Add a few simple tests to demonstrate usage
2023-01-30 07:15:09 -07:00
luz paz
4be3fe84c7 App: fix trailing whitespace 2022-12-02 19:19:17 -06:00
Chris Hennes
1fac3fead0 cMake: Add support for compiling against Qt6 (#7647)
Removes the BUILD_QT5 flag and adds a new FREECAD_QT_VERSION option,
which can be set to either "Auto" (default), 5, or 6. Auto detects which
version of Qt is installed on the system and chooses it. If both version
are installed, Qt5 is used.

Note that this DOES NOT implement compiling against Qt6, it only adds
the necessary cMake infrastructure to begin work on the source code
changes that will be required.
2022-10-31 09:24:09 -05:00
wmayer
d98aaecbfe Mod: issue #6274: Source code installation failed 2022-04-18 12:27:09 +02:00
wmayer
9b59baaacf App: add CMAKE_BINARY_DIR to search paths 2021-11-23 20:13:02 +01:00
Chris Hennes
810a1b23a5 [App] Add metadata handling class 2021-05-13 09:08:28 -05:00
wmayer
0f60598964 boost: remove broken define that causes a warning: ISO C++11 requires whitespace after the macro name 2020-06-12 17:51:33 +02:00
Zheng, Lei
38c47d6e95 Expression: split Expression.h to ExpressionParser.h
Split Expression details into a separate header to reduce recompilation
time on changes.
2019-09-28 15:30:41 +02:00
Zheng, Lei
f1b569621a Split App::AutoTransaction into its own file 2019-09-10 14:17:07 +02:00
wmayer
8e582d68c4 use GNU directory structure on non-Windows systems 2019-08-22 16:57:11 +02:00
Zheng, Lei
ebf321fc47 Implementation of Link
This patch includes the actual implementation of Link, which is
implemented as an extension named LinkBaseExtension in App namespace,
and a full view provider ViewProviderLink in Gui. The reason of not
using ViewProviderExtension is because it need full control when
display, not just extending existing functionalities.

Please see [here](https://git.io/fjPue) for more details of the
implementation.

This patch also includes a set of link manipulation commands, and a
task panel for overriding geometry element colors.
2019-08-17 15:08:33 +02:00
Zheng, Lei
dddd3a95b5 Improve Version.h handling
Always check for version changes when building. Version.h is only
updated if actually changed.
2019-08-17 15:08:33 +02:00
wmayer
0521860740 rename BUILD_uSE_PCH to FREECAD_USE_PCH to be consistent with other build options 2019-04-15 13:31:31 +02:00
luz.paz
cb4a0adf71 Misc. typos
Found via `codespell`
2019-02-08 11:01:24 -02:00
wmayer
d88860a4c1 rework error handling mechanism 2018-10-24 19:38:43 +02:00
wmayer
0b3db26b24 reduce compile time after each time cmake configure is executed 2018-08-21 13:53:33 +02:00
wmayer
0260370b65 + add option to switch off precompiled header 2018-07-25 20:17:11 +02:00
wmayer
4d63e9a4c4 various minor changes:
+ whitespace improvement
+ code cleanup
2017-11-21 17:51:22 +01:00
Stefan Tröger
85125f2a49 Make InList hadling and topological sort more robust. fixes #0002871 2017-09-09 16:47:07 +02:00
Markus Hovorka
f9f2d8c31b Add TextDocument with full size editor
A new document object App::TextDocument. It has a property Text which
holds the text of the document as a string. This commit also contains a
full size editor based on QPlainTextEdit. It can only be used by the
TextDocument and has a read only mode invoked for read only documents
(ReadOnly property set to true). The editor is invoked by a double
click on the TextDocument.
2017-07-04 19:36:10 +02:00
wmayer
11a1929344 restore old DAG implementation and fix some build failures 2017-01-22 13:31:49 +01:00
Stefan Tröger
a1deaf8338 DAG: Fix preprocessor definition inconsistencies 2017-01-21 19:15:36 +01:00
wmayer
743b83e853 Add switch to select between Qt4 and Qt5 2016-12-13 15:53:13 +01:00
wmayer
6cfaf916f8 remove superfluous Qt includes 2016-12-13 15:40:49 +01:00
Stefan Tröger
f0f31ff94c Extensions: Make Python Integration work 2016-10-08 12:48:34 +02:00
Stefan Tröger
c0f243fa3b Extensions: bring files in correct order 2016-10-08 12:48:34 +02:00
Stefan Tröger
16f8dbbacd Extensions: special calls for document object extensions 2016-10-08 12:48:34 +02:00
Stefan Tröger
552fe52774 Extensions: Show up in the python interface 2016-10-08 12:48:34 +02:00
Stefan Tröger
6fa964c53f Extensions: Introduce classes and port App groups 2016-10-08 12:48:34 +02:00
wmayer
3d16ae0f04 prepare view provider for undo/redo 2016-07-23 11:45:21 +02:00
Stefan Tröger
affbf2b9d7 FEM Post: Give access to cmake BUILD variables from python
This commit adds a attribute __cmake__ to App which is a list holding all compile time cmake variables starting with BUILD.

Only export BUILD variables
2016-05-18 21:35:15 +02:00
Johannes Obermayr
bd3f6f4052 Fix boost::any bug with Boost 1.54.
and set BOOST_MIN_VERSION to 1.48.

Fixes:
- http://freecadweb.org/tracker/view.php?id=0002505
- http://forum.freecadweb.org/viewtopic.php?f=13&t=15310
- http://forum.freecadweb.org/viewtopic.php?f=3&t=15400
- http://forum.freecadweb.org/viewtopic.php?f=10&t=14108
2016-05-02 18:31:08 +02:00
Alexander Golubev
d72a919384 OriginGroup: add new abstraction layer between the Part and the GeoFeatureGroup 2016-04-12 18:12:18 +02:00
Alexander Golubev
305151be34 App/Origin: big refactoring
- Rebase App::Origin on App::DocumentObject
 - Keep all control over the Origin structure inside the Origin and it's
   ViewProvider
 - Add OriginFeature class as common base for App::Plane and App::Line
 - Rebase App::Plane and App::Line on top of newly created class and
   move to the file.
 - Change Origin's ViewProvider API associated with temporary display
 - Lots of associated changes to files
 - Several minor fixes
 - Lots of new bugs
2016-04-12 18:12:18 +02:00
Stefan Tröger
46e4e3b2b4 group coordinate planes and lines 2016-04-12 18:12:05 +02:00
Stefan Tröger
b401f07bdf add base lines 2016-04-12 18:12:05 +02:00