File tree Expand file tree Collapse file tree 3 files changed +12
-8
lines changed Expand file tree Collapse file tree 3 files changed +12
-8
lines changed Original file line number Diff line number Diff line change @@ -121,13 +121,17 @@ to be installed. It is very common to have to adjust the one-line command below
121
121
(usually provided under a different name).
122
122
123
123
A single command to install the dependencies on Ubuntu-based systems (last adjusted for 22.04.3 LTS):
124
- ```
124
+ ``` sh
125
125
sudo apt install cmake cmake-gui libboost-date-time-dev libboost-dev libboost-filesystem-dev libboost-graph-dev libboost-iostreams-dev libboost-program-options-dev libboost-python-dev libboost-regex-dev libboost-serialization-dev libboost-thread-dev libcoin-dev libeigen3-dev libgts-bin libgts-dev libkdtree++-dev libmedc-dev libocct-data-exchange-dev libocct-ocaf-dev libocct-visualization-dev libopencv-dev libproj-dev libpyside2-dev libqt5opengl5-dev libqt5svg5-dev qtwebengine5-dev libqt5x11extras5-dev libqt5xmlpatterns5-dev libshiboken2-dev libspnav-dev libvtk7-dev libx11-dev libxerces-c-dev libzipios++-dev occt-draw pyside2-tools python3-dev python3-matplotlib python3-packaging python3-pivy python3-ply python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qtsvg python3-pyside2.qtwidgets python3-pyside2.qtnetwork python3-pyside2.qtwebengine python3-pyside2.qtwebenginecore python3-pyside2.qtwebenginewidgets python3-pyside2.qtwebchannel python3-markdown python3-git qtbase5-dev qttools5-dev swig libyaml-cpp-dev
126
126
```
127
127
To install dependencies on Fedora systems (Derived from the [ RPM spec] ( https://src.fedoraproject.org/rpms/freecad ) ):
128
- ```
128
+ ``` sh
129
129
sudo dnf install clang cmake gcc-c++ gettext dos2unix doxygen swig graphviz gcc-gfortran desktop-file-utils freeimage-devel libXmu-devel mesa-libGL-devel mesa-libGLU-devel libglvnd-devel opencascade-devel Coin4-devel python3-devel python3-matplotlib python3-pivy boost-devel eigen3-devel tbb-devel qt5-qtbase-devel qt5-qtsvg-devel qt5-qtxmlpatterns-devel qt5-qttools-devel qt5-qttools-static qt5-qtwebengine-devel xerces-c xerces-c-devel libspnav-devel python3-shiboken2-devel python3-pyside2-devel pyside2-tools smesh-devel zipios++-devel python3-pycxx-devel libicu-devel vtk-devel med-devel libkdtree++-devel libappstream-glib python3-pivy python3-matplotlib python3-collada python3-pyside2 qt5-assistant
130
130
```
131
+ To install dependencies on Arch Linux based systems:
132
+ ``` sh
133
+ sudo pacman -S boost boost-libs cgns cmake coin eigen fmt git glew graphviz jsoncpp libharu liblas libspnav med-openmpi netcdf ninja nlohmann-json openmpi openvdb opencascade openvr ospray pdal pugixml pyside2 pyside2-tools python-gitpython python-markdown python-matplotlib python-mpi4py python-pip python-pivy python-ply python-shiboken2 python-yaml qt5-svg qt5-tools qt5-webengine qt5-x11extras qt5-xmlpatterns shiboken2 swig utf8cpp verdict xerces-c
134
+ ```
131
135
132
136
### Windows
133
137
Original file line number Diff line number Diff line change @@ -14,17 +14,17 @@ is not tidy.
14
14
15
15
There are two methods in the ViewProvider that deal with this situation.
16
16
17
- ''' c++
17
+ ``` c++
18
18
bool canDelete (App::DocumentObject * obj)
19
- '''
19
+ ```
20
20
is called when Std_Delete is asked to delete obj, BUT it is called for each of
21
21
obj's parent in the InList. This is where you would decide if you will allow
22
22
one of your children can be deleted. In effect, the is canDeleteMyChildObject().
23
23
Return true to allow the child to be deleted, or false to prevent the deletion.
24
24
25
- ''' c++
25
+ ``` c++
26
26
bool onDelete(const std::vector<std::string> & parms)
27
- '''
27
+ ```
28
28
is also called when when Std_Delete is asked to delete a DocumentObject, but in
29
29
this case it is the DocumentObject's ViewProvider that is called. Return true
30
30
to allow deletion of the DocumentObject, or false to prevent the deletion.
Original file line number Diff line number Diff line change @@ -15,7 +15,7 @@ Recommended reading:
15
15
- When a Property's value changes, its PropertyContainer (eventually a DocumentObject) executes the onChanged method with the Property as a parameter. This is where you will take appropriate action based on the new property value.
16
16
- Be cautious when inserting logic into onChanged and execute as it is possible to create a loop.
17
17
18
- ''' c++
18
+ ``` c++
19
19
void myFeature::execute ()
20
20
{
21
21
MyProperty->setValue(foo());
@@ -26,7 +26,7 @@ void myFeature::onChanged(App::Property property)
26
26
execute();
27
27
}
28
28
}
29
- '''
29
+ ```
30
30
- The other interesting method involving property changes is mustExecute. This is where you control whether or not your object participates in the next recompute cycle.
31
31
32
32
You can’t perform that action at this time.
0 commit comments