From aa2e4ca1cbff29ba7c75cc08d2c310ff688ad703 Mon Sep 17 00:00:00 2001 From: PaddleStroke Date: Fri, 20 Sep 2024 10:31:36 +0200 Subject: [PATCH] Rename ViewProviderOriginFeature to ViewProviderDatum --- src/Gui/Application.cpp | 4 +- src/Gui/CMakeLists.txt | 4 +- ...riginFeature.cpp => ViewProviderDatum.cpp} | 109 +++++++++--------- ...derOriginFeature.h => ViewProviderDatum.h} | 72 ++++++------ src/Gui/ViewProviderLine.cpp | 6 +- src/Gui/ViewProviderLine.h | 4 +- src/Gui/ViewProviderOriginGroupExtension.cpp | 4 +- src/Gui/ViewProviderPlane.cpp | 6 +- src/Gui/ViewProviderPlane.h | 4 +- src/Mod/PartDesign/Gui/ViewProviderBody.cpp | 4 +- 10 files changed, 111 insertions(+), 106 deletions(-) rename src/Gui/{ViewProviderOriginFeature.cpp => ViewProviderDatum.cpp} (62%) rename src/Gui/{ViewProviderOriginFeature.h => ViewProviderDatum.h} (54%) diff --git a/src/Gui/Application.cpp b/src/Gui/Application.cpp index 087a02ef71..90934ca6b2 100644 --- a/src/Gui/Application.cpp +++ b/src/Gui/Application.cpp @@ -116,7 +116,7 @@ #include "ViewProviderLinkPy.h" #include "ViewProviderMaterialObject.h" #include "ViewProviderOrigin.h" -#include "ViewProviderOriginFeature.h" +#include "ViewProviderDatum.h" #include "ViewProviderOriginGroup.h" #include "ViewProviderPlacement.h" #include "ViewProviderPlane.h" @@ -2068,7 +2068,7 @@ void Application::initTypes() Gui::ViewProviderGeometryPython ::init(); Gui::ViewProviderPlacement ::init(); Gui::ViewProviderPlacementPython ::init(); - Gui::ViewProviderOriginFeature ::init(); + Gui::ViewProviderDatum ::init(); Gui::ViewProviderPlane ::init(); Gui::ViewProviderLine ::init(); Gui::ViewProviderGeoFeatureGroup ::init(); diff --git a/src/Gui/CMakeLists.txt b/src/Gui/CMakeLists.txt index ad10921ae2..dda0c341c0 100644 --- a/src/Gui/CMakeLists.txt +++ b/src/Gui/CMakeLists.txt @@ -961,7 +961,7 @@ SET(Viewprovider_CPP_SRCS ViewProviderVRMLObject.cpp ViewProviderBuilder.cpp ViewProviderPlacement.cpp - ViewProviderOriginFeature.cpp + ViewProviderDatum.cpp ViewProviderPlane.cpp ViewProviderLine.cpp ViewProviderGeoFeatureGroup.cpp @@ -998,7 +998,7 @@ SET(Viewprovider_SRCS ViewProviderVRMLObject.h ViewProviderBuilder.h ViewProviderPlacement.h - ViewProviderOriginFeature.h + ViewProviderDatum.h ViewProviderPlane.h ViewProviderLine.h ViewProviderGeoFeatureGroup.h diff --git a/src/Gui/ViewProviderOriginFeature.cpp b/src/Gui/ViewProviderDatum.cpp similarity index 62% rename from src/Gui/ViewProviderOriginFeature.cpp rename to src/Gui/ViewProviderDatum.cpp index a6d3b66b3c..ee968e64d9 100644 --- a/src/Gui/ViewProviderOriginFeature.cpp +++ b/src/Gui/ViewProviderDatum.cpp @@ -34,34 +34,34 @@ #endif #include -#include +#include #include -#include "ViewProviderOriginFeature.h" +#include "ViewProviderDatum.h" #include "SoFCSelection.h" #include "ViewProviderOrigin.h" using namespace Gui; -PROPERTY_SOURCE(Gui::ViewProviderOriginFeature, Gui::ViewProviderGeometryObject) +PROPERTY_SOURCE(Gui::ViewProviderDatum, Gui::ViewProviderGeometryObject) -ViewProviderOriginFeature::ViewProviderOriginFeature () { - ADD_PROPERTY_TYPE ( Size, (ViewProviderOrigin::defaultSize()), 0, App::Prop_ReadOnly, - QT_TRANSLATE_NOOP("App::Property", "Visual size of the feature")); +ViewProviderDatum::ViewProviderDatum() { + ADD_PROPERTY_TYPE(Size, (ViewProviderOrigin::defaultSize()), 0, App::Prop_ReadOnly, + QT_TRANSLATE_NOOP("App::Property", "Visual size of the feature")); ShapeAppearance.setDiffuseColor( - ViewProviderOrigin::defaultColor); // Set default color for origin (light-blue) + ViewProviderOrigin::defaultColor); // Set default color for origin (light-blue) Transparency.setValue(0); BoundingBox.setStatus(App::Property::Hidden, true); // Hide Boundingbox from the user due to it doesn't make sense // Create node for scaling the origin - pScale = new SoScale (); - pScale->ref (); + pScale = new SoScale(); + pScale->ref(); // Create the separator filled by inherited classes pOriginFeatureRoot = new SoSeparator(); - pOriginFeatureRoot->ref (); + pOriginFeatureRoot->ref(); // Create the Label node pLabel = new SoAsciiText(); @@ -70,19 +70,19 @@ ViewProviderOriginFeature::ViewProviderOriginFeature () { } -ViewProviderOriginFeature::~ViewProviderOriginFeature () { - pScale->unref (); - pOriginFeatureRoot->unref (); - pLabel->unref (); +ViewProviderDatum::~ViewProviderDatum() { + pScale->unref(); + pOriginFeatureRoot->unref(); + pLabel->unref(); } -void ViewProviderOriginFeature::attach(App::DocumentObject* pcObject) +void ViewProviderDatum::attach(App::DocumentObject* pcObject) { ViewProviderGeometryObject::attach(pcObject); float defaultSz = ViewProviderOrigin::defaultSize(); - float sz = Size.getValue () / defaultSz; + float sz = Size.getValue() / defaultSz; // Create an external separator auto sep = new SoSeparator(); @@ -96,87 +96,89 @@ void ViewProviderOriginFeature::attach(App::DocumentObject* pcObject) sep->addChild(matBinding); // Scale feature to the given size - pScale->scaleFactor = SbVec3f (sz, sz, sz); - sep->addChild (pScale); + pScale->scaleFactor = SbVec3f(sz, sz, sz); + sep->addChild(pScale); // Setup font size - auto font = new SoFont (); + auto font = new SoFont(); float fontRatio = 10.0f; - if ( pcObject->is() ) { + if (pcObject->is()) { // keep font size on axes equal to font size on planes fontRatio *= ViewProviderOrigin::axesScaling; const char* axisName = pcObject->getNameInDocument(); auto axisRoles = App::Origin::AxisRoles; - if ( strncmp(axisName, axisRoles[0], strlen(axisRoles[0]) ) == 0 ) { + if (strncmp(axisName, axisRoles[0], strlen(axisRoles[0])) == 0) { // X-axis: red ShapeAppearance.setDiffuseColor(0xFF0000FF); - } else if ( strncmp(axisName, axisRoles[1], strlen(axisRoles[1]) ) == 0 ) { + } + else if (strncmp(axisName, axisRoles[1], strlen(axisRoles[1])) == 0) { // Y-axis: green ShapeAppearance.setDiffuseColor(0x00FF00FF); - } else if ( strncmp(axisName, axisRoles[2], strlen(axisRoles[2]) ) == 0 ) { + } + else if (strncmp(axisName, axisRoles[2], strlen(axisRoles[2])) == 0) { // Z-axis: blue ShapeAppearance.setDiffuseColor(0x0000FFFF); } } - font->size.setValue ( defaultSz / fontRatio ); - sep->addChild ( font ); + font->size.setValue(defaultSz / fontRatio); + sep->addChild(font); // Create the selection node - auto highlight = new SoFCSelection (); - highlight->applySettings (); - if ( !Selectable.getValue() ) { + auto highlight = new SoFCSelection(); + highlight->applySettings(); + if (!Selectable.getValue()) { highlight->selectionMode = Gui::SoFCSelection::SEL_OFF; } - highlight->objectName = getObject()->getNameInDocument(); - highlight->documentName = getObject()->getDocument()->getName(); + highlight->objectName = getObject()->getNameInDocument(); + highlight->documentName = getObject()->getDocument()->getName(); highlight->style = SoFCSelection::EMISSIVE_DIFFUSE; // Style for normal (visible) lines - auto style = new SoDrawStyle (); + auto style = new SoDrawStyle(); style->lineWidth = 2.0f; - highlight->addChild ( style ); + highlight->addChild(style); // Visible lines - highlight->addChild ( pOriginFeatureRoot ); + highlight->addChild(pOriginFeatureRoot); // Hidden features - auto hidden = new SoAnnotation (); + auto hidden = new SoAnnotation(); // Style for hidden lines - style = new SoDrawStyle (); + style = new SoDrawStyle(); style->lineWidth = 2.0f; - style->linePattern.setValue ( 0xF000 ); // (dash-skip-skip-skip) - hidden->addChild ( style ); + style->linePattern.setValue(0xF000); // (dash-skip-skip-skip) + hidden->addChild(style); // Hidden lines - hidden->addChild ( pOriginFeatureRoot ); + hidden->addChild(pOriginFeatureRoot); - highlight->addChild ( hidden ); + highlight->addChild(hidden); - sep->addChild ( highlight ); + sep->addChild(highlight); // Setup the object label as it's text - pLabel->string.setValue ( SbString ( pcObject->Label.getValue () ) ); + pLabel->string.setValue(SbString(pcObject->Label.getValue())); - addDisplayMaskMode ( sep, "Base" ); + addDisplayMaskMode(sep, "Base"); } -void ViewProviderOriginFeature::updateData ( const App::Property* prop ) { +void ViewProviderDatum::updateData(const App::Property* prop) { if (prop == &getObject()->Label) { - pLabel->string.setValue ( SbString ( getObject()->Label.getValue () ) ); + pLabel->string.setValue(SbString(getObject()->Label.getValue())); } ViewProviderGeometryObject::updateData(prop); } -void ViewProviderOriginFeature::onChanged ( const App::Property* prop ) { +void ViewProviderDatum::onChanged(const App::Property* prop) { if (prop == &Size) { - float sz = Size.getValue () / ViewProviderOrigin::defaultSize(); - pScale->scaleFactor = SbVec3f (sz, sz, sz); + float sz = Size.getValue() / ViewProviderOrigin::defaultSize(); + pScale->scaleFactor = SbVec3f(sz, sz, sz); } ViewProviderGeometryObject::onChanged(prop); } -std::vector ViewProviderOriginFeature::getDisplayModes () const +std::vector ViewProviderDatum::getDisplayModes() const { // add modes std::vector StrList; @@ -184,20 +186,21 @@ std::vector ViewProviderOriginFeature::getDisplayModes () const return StrList; } -void ViewProviderOriginFeature::setDisplayMode (const char* ModeName) +void ViewProviderDatum::setDisplayMode(const char* ModeName) { if (strcmp(ModeName, "Base") == 0) setDisplayMaskMode("Base"); ViewProviderGeometryObject::setDisplayMode(ModeName); } -bool ViewProviderOriginFeature::onDelete(const std::vector &) { - auto feat = static_cast (getObject()); +bool ViewProviderDatum::onDelete(const std::vector&) { + auto feat = static_cast (getObject()); // Forbid deletion if there is an origin this feature belongs to - if ( feat->getOrigin () ) { + if (feat->getOrigin()) { return false; - } else { + } + else { return true; } } diff --git a/src/Gui/ViewProviderOriginFeature.h b/src/Gui/ViewProviderDatum.h similarity index 54% rename from src/Gui/ViewProviderOriginFeature.h rename to src/Gui/ViewProviderDatum.h index 525496541d..8da935262f 100644 --- a/src/Gui/ViewProviderOriginFeature.h +++ b/src/Gui/ViewProviderDatum.h @@ -20,8 +20,8 @@ * * ***************************************************************************/ -#ifndef VIEWPROVIDEORIGINFEATURE_H_BYJRZNDL -#define VIEWPROVIDEORIGINFEATURE_H_BYJRZNDL +#ifndef VIEWPROVIDEDATUM_H_BYJRZNDL +#define VIEWPROVIDEDATUM_H_BYJRZNDL #include "ViewProviderGeometryObject.h" @@ -31,47 +31,49 @@ class SoScale; namespace Gui { -/** - * View provider associated with an App::OriginFeature. - */ -class GuiExport ViewProviderOriginFeature: public ViewProviderGeometryObject { - PROPERTY_HEADER_WITH_OVERRIDE(Gui::ViewProviderOriginFeature); + /** + * View provider associated with an App::DatumElement. + */ + class GuiExport ViewProviderDatum : public ViewProviderGeometryObject { + PROPERTY_HEADER_WITH_OVERRIDE(Gui::ViewProviderDatum); -public: - /// The display size of the feature - App::PropertyFloat Size; + public: + /// The display size of the feature + App::PropertyFloat Size; - ViewProviderOriginFeature (); - ~ViewProviderOriginFeature () override; + ViewProviderDatum(); + ~ViewProviderDatum() override; - /// Get point derived classes will add their specific stuff - SoSeparator * getOriginFeatureRoot () { return pOriginFeatureRoot; } + /// Get point derived classes will add their specific stuff + SoSeparator* getOriginFeatureRoot() { return pOriginFeatureRoot; } - /// Get pointer to the text label associated with the feature - SoAsciiText * getLabel () { return pLabel; } + /// Get pointer to the text label associated with the feature + SoAsciiText* getLabel() { return pLabel; } - void attach(App::DocumentObject *) override; - void updateData(const App::Property *) override; - std::vector getDisplayModes () const override; - void setDisplayMode (const char* ModeName) override; + void attach(App::DocumentObject*) override; + void updateData(const App::Property*) override; + std::vector getDisplayModes() const override; + void setDisplayMode(const char* ModeName) override; - /// @name Suppress ViewProviderGeometryObject's behaviour - ///@{ - bool setEdit ( int ) override - { return false; } - void unsetEdit ( int ) override + /// @name Suppress ViewProviderGeometryObject's behaviour + ///@{ + bool setEdit(int) override + { + return false; + } + void unsetEdit(int) override { } - ///@} + ///@} -protected: - void onChanged ( const App::Property* prop ) override; - bool onDelete ( const std::vector & ) override; -protected: - SoSeparator * pOriginFeatureRoot; - SoScale * pScale; - SoAsciiText * pLabel; -}; + protected: + void onChanged(const App::Property* prop) override; + bool onDelete(const std::vector&) override; + protected: + SoSeparator* pOriginFeatureRoot; + SoScale* pScale; + SoAsciiText* pLabel; + }; } /* Gui */ -#endif /* end of include guard: VIEWPROVIDEORIGINFEATURE_H_BYJRZNDL */ +#endif /* end of include guard: VIEWPROVIDEDATUM_H_BYJRZNDL */ diff --git a/src/Gui/ViewProviderLine.cpp b/src/Gui/ViewProviderLine.cpp index 37c3482074..7b13c44908 100644 --- a/src/Gui/ViewProviderLine.cpp +++ b/src/Gui/ViewProviderLine.cpp @@ -38,7 +38,7 @@ using namespace Gui; -PROPERTY_SOURCE(Gui::ViewProviderLine, Gui::ViewProviderOriginFeature) +PROPERTY_SOURCE(Gui::ViewProviderLine, Gui::ViewProviderDatum) ViewProviderLine::ViewProviderLine() @@ -48,8 +48,8 @@ ViewProviderLine::ViewProviderLine() ViewProviderLine::~ViewProviderLine() = default; -void ViewProviderLine::attach ( App::DocumentObject *obj ) { - ViewProviderOriginFeature::attach ( obj ); +void ViewProviderLine::attach(App::DocumentObject *obj) { + ViewProviderDatum::attach(obj); static const float size = ViewProviderOrigin::defaultSize (); diff --git a/src/Gui/ViewProviderLine.h b/src/Gui/ViewProviderLine.h index 95fa60f3d0..7a9c8f5085 100644 --- a/src/Gui/ViewProviderLine.h +++ b/src/Gui/ViewProviderLine.h @@ -25,12 +25,12 @@ #ifndef GUI_ViewProviderLine_H #define GUI_ViewProviderLine_H -#include "ViewProviderOriginFeature.h" +#include "ViewProviderDatum.h" namespace Gui { -class GuiExport ViewProviderLine : public ViewProviderOriginFeature { +class GuiExport ViewProviderLine : public ViewProviderDatum { PROPERTY_HEADER_WITH_OVERRIDE(Gui::ViewProviderLine); public: /// Constructor diff --git a/src/Gui/ViewProviderOriginGroupExtension.cpp b/src/Gui/ViewProviderOriginGroupExtension.cpp index 2d08457968..522f74a8ab 100644 --- a/src/Gui/ViewProviderOriginGroupExtension.cpp +++ b/src/Gui/ViewProviderOriginGroupExtension.cpp @@ -39,7 +39,7 @@ #include "View3DInventor.h" #include "View3DInventorViewer.h" #include "ViewProviderOrigin.h" -#include "ViewProviderOriginFeature.h" +#include "ViewProviderDatum.h" using namespace Gui; @@ -127,7 +127,7 @@ void ViewProviderOriginGroupExtension::slotChangedObjectApp ( const App::Documen } void ViewProviderOriginGroupExtension::slotChangedObjectGui ( const Gui::ViewProviderDocumentObject& vp) { - if ( !vp.isDerivedFrom ( Gui::ViewProviderOriginFeature::getClassTypeId () )) { + if ( !vp.isDerivedFrom ( Gui::ViewProviderDatum::getClassTypeId () )) { // Ignore origins to avoid infinite recursion (not likely in a well-formed document, // but may happen in documents designed in old versions of assembly branch ) auto* ext = getExtendedViewProvider()->getObject(); diff --git a/src/Gui/ViewProviderPlane.cpp b/src/Gui/ViewProviderPlane.cpp index b6030884d2..d845ae9e1d 100644 --- a/src/Gui/ViewProviderPlane.cpp +++ b/src/Gui/ViewProviderPlane.cpp @@ -42,7 +42,7 @@ using namespace Gui; -PROPERTY_SOURCE(Gui::ViewProviderPlane, Gui::ViewProviderOriginFeature) +PROPERTY_SOURCE(Gui::ViewProviderPlane, Gui::ViewProviderDatum) ViewProviderPlane::ViewProviderPlane() @@ -52,8 +52,8 @@ ViewProviderPlane::ViewProviderPlane() ViewProviderPlane::~ViewProviderPlane() = default; -void ViewProviderPlane::attach ( App::DocumentObject *obj ) { - ViewProviderOriginFeature::attach ( obj ); +void ViewProviderPlane::attach(App::DocumentObject * obj) { + ViewProviderDatum::attach(obj); static const float size = ViewProviderOrigin::defaultSize (); static const SbVec3f verts[4] = { diff --git a/src/Gui/ViewProviderPlane.h b/src/Gui/ViewProviderPlane.h index 68a809955c..f1daecf432 100644 --- a/src/Gui/ViewProviderPlane.h +++ b/src/Gui/ViewProviderPlane.h @@ -25,12 +25,12 @@ #ifndef GUI_ViewProviderPlane_H #define GUI_ViewProviderPlane_H -#include "ViewProviderOriginFeature.h" +#include "ViewProviderDatum.h" namespace Gui { -class GuiExport ViewProviderPlane : public ViewProviderOriginFeature +class GuiExport ViewProviderPlane : public ViewProviderDatum { PROPERTY_HEADER_WITH_OVERRIDE(Gui::ViewProviderPlane); public: diff --git a/src/Mod/PartDesign/Gui/ViewProviderBody.cpp b/src/Mod/PartDesign/Gui/ViewProviderBody.cpp index fffc836bdc..5056247c75 100644 --- a/src/Mod/PartDesign/Gui/ViewProviderBody.cpp +++ b/src/Mod/PartDesign/Gui/ViewProviderBody.cpp @@ -43,7 +43,7 @@ #include #include #include -#include +#include #include #include #include @@ -282,7 +282,7 @@ void ViewProviderBody::slotChangedObjectGui ( } if ( !vp.isDerivedFrom ( Gui::ViewProviderOrigin::getClassTypeId () ) && - !vp.isDerivedFrom ( Gui::ViewProviderOriginFeature::getClassTypeId () ) ) { + !vp.isDerivedFrom ( Gui::ViewProviderDatum::getClassTypeId () ) ) { // Ignore origins to avoid infinite recursion (not likely in a well-formed document, // but may happen in documents designed in old versions of assembly branch ) return;