Commit Graph

34 Commits

Author SHA1 Message Date
Luz Paz
ee4fa234c9 Fix various typos
Missed by the codespell CI not being functional for a period of time.
2025-05-15 10:59:48 -05:00
Pieter Hijma
9cbea91d60 Doc: Improve App::ObjectIdentifier docs 2025-05-07 13:34:25 +02:00
Pieter Hijma
f438c0ed04 Doc: Move doc comments ObjectIdentifier
Move the doc comments from the cpp file to the header file.
2025-05-07 10:26:28 +02:00
Benjamin Nauck
c77de32b78 App: Use std::numeric_limits and std::numbers instead of defines 2025-03-29 13:32:37 +01:00
wmayer
fadfc7e270 App: Apply clang format (part 2) 2024-11-21 21:17:42 +01:00
bgbsww
d4d40efbc5 Refactor all element name pairs into clearer struct names - definitions 2024-07-20 16:32:12 -04:00
wmayer
1cf1a90a17 App: modernize C++: use default member init 2023-08-23 19:51:44 +02:00
wmayer
656890be38 App: modernize C++: replace 'typedef' with 'using' 2022-08-29 12:58:39 +02:00
berniev
d2babf0eb5 App: Single arg ctors must be explicit 2022-08-24 07:20:57 +02:00
berniev
b6cae3bfdf App: Modernise ctors dtors defs etc 2022-08-01 00:34:46 +02:00
wmayer
1a20b7f119 App: modernize C++11
* use nullptr
2022-03-23 17:29:23 +01:00
wmayer
6c2e1a2d6e Base: implement a lightweight smart pointer for PyObject like Py::Object to reduce includes of Python.h in header files 2022-03-04 15:51:51 +01:00
Uwe
f04194b7bb [App] Object, Meta, Merge: remove unused includes 2022-02-28 01:02:06 +01:00
wmayer
bea4b65639 App: include FCGlobal.h for export macro 2022-01-05 20:11:16 +01:00
luz paz
bd210c9ee0 App: remove superfluous whitespace in ObjectIdentifier.h 2021-11-20 14:03:40 +01:00
luz paz
05c5e0a6d9 App: fix doc typo in ObjectIdentifier.h 2021-11-20 14:03:40 +01:00
Zheng, Lei
fdae470c1b App: add hiddenref() expression built-in function
Any object reference inside this function is treated as hidden to
exclude it from dependency calculation. This function allows some form
of cyclic depdenency.

Merger note: renamed from "HREF" to "HIDDENREF" to avoid confusion with
the standard "hypertext reference" use of HREF.
2021-11-14 20:45:09 -06:00
luz paz
84553bf191 App: Fix header uniformity, trailing whitespace, and doxygen headers 2020-11-19 13:38:37 +01:00
Priit Laes
5f92194a8c build: Bump boost requirement to 1.55 and drop bundled boost::any
Based on the information from bunch of the latest supported distros:
Debian Jessie: 1.55
Debian Stretch: 1.62
Ubuntu 16.04: 1.58
Ubuntu 18.04: 1.65
Fedora 31 and 32: 1.69
Redhat Enterprise Linux 8: 1.66 (1.53 for EL-7, though)
openSuse Leap 15.1: 1.66
2020-10-13 12:56:28 +02:00
Zheng, Lei
9d66dbbbbf App: fix Expression _moveCells()
The problem is caused by not refreshing ObjectIdentifier internal cache
after change.
2019-12-31 15:23:03 +01:00
luz.paz
019f73852c src/App: [skip ci] fix header uniformity
This PR fixes header uniformity across all `src/App` files
2019-12-25 11:38:43 +01:00
asapelkin
5a75d2ff45 removed useless std::move on const and unmovable objects 2019-11-21 17:49:57 +01:00
luz.paz
fb32601746 Fix various (doxy) typos and whitespace issues
Found via `codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,ba,beginn,behaviour,bloaded,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childs,colour,colours,commen,currenty,dof,doubleclick,dum,eiter,elemente,feld,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oder,orgin,orginx,orginy,ot,pard,pres,programm,que,recurrance,rougly,seperator,serie,sinc,strack,substraction,te,thist,thru,tread,uint,unter,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml`
2019-10-03 07:57:13 +02:00
Zheng, Lei
ced27a69c6 PropertyExpressionEngine: convert to link type property
PropertyExpressionEngine is changed to derived from a new class
PropertyExpressionContainer, which is in turn derives from
PropertyXLinkContainer. This makes PropertyExpressionEngine a link type
property that is capable of external linking. It now uses the unified
link property APIs for dependency management and tracking of object
life time, re-labeling, etc.

ObjectIdentifier is modified to support sub-object reference, but is
not exposed to end-user, because expression syntax is kept mostly
unchanged, which will be submitted in future PR. There is, however,
one small change in expression syntax (ExpressionParser.y) to introduce
local property reference to avoid ambiguity mentioned in
FreeCAD/FreeCAD#1619

Modified Expression/ExpressionModifier interface to support various link
property API for link modification.
2019-08-17 14:52:09 +02:00
wmayer
314720c8c1 ObjectIdentifier has virtual method but no virtual destructor
fix 32-bit issues in PythonStuff.cpp
2016-10-01 11:03:15 +02:00
DeepSOIC
97f0e15175 App: fix ObjectIdentifier causing link errors
Add missing AppExport to hash_value().
2016-05-07 11:24:41 +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
Eivind Kvedalen
dcc3c6b27b Expression class: Improved error message when resolving a variable fails. 2016-02-18 16:54:44 +01:00
Eivind Kvedalen
452650440b PropertyExpressionEngine: Refactored and moved visitor code to separate file. 2016-02-18 16:54:41 +01:00
Eivind Kvedalen
ae73a9313b ObjectIdentifier: Reworked resolve() function to solve issue #2389 and #2418.
* Refactored code; moved mutable fields into a separate inner class.
* Added resolvedProperty to ResolveResults class.
* Set resolved document name, even if it does not resolve correctly, so we can give a better error message later.
* If the document name is explicitly set, and it does not resolve, don't try any further.
* If document name is set, use that instead of the ObjectIdentifier's owner when looking up the document object.
2016-02-18 16:54:39 +01:00
Eivind Kvedalen
580dab840c ObjectIdentifier: Issue #2407: Fixed resolution of DocumentObject, to differentiate better between internal name and Label. 2016-01-26 11:25:58 +01:00
Eivind Kvedalen
c2d5b0ad91 Issue #2389: ObjectIdentifiers constructed from a property sometimes do not
resolve correctly, because the resolver may fail if a different document
objects has a Label equal to the property's document object's identifier.
2016-01-08 23:09:00 +01:00
Eivind Kvedalen
ca0c9de886 Expression/ObjectIdentifier: changed return type of renameDocumentObject and renameDocument,
to be able to signal that a rename actually took place.
2015-12-21 14:11:12 +01:00
Eivind Kvedalen
ae388d26ea Added Expression classes to App directory. Added Expression interface to Property base class. 2015-09-21 14:51:02 +02:00