Gui: Add Selectable property to Part containers

Change `ViewProviderPart` to inherit from `ViewProviderGeometryObject`,
giving Part containers the Selectable property. This allows recursive
selectability checks to respect the entire container hierarchy.
This commit is contained in:
tetektoza
2025-12-30 18:12:13 +01:00
parent b44d75454f
commit 80532b78e1
2 changed files with 6 additions and 5 deletions

View File

@@ -39,7 +39,7 @@
using namespace Gui;
PROPERTY_SOURCE_WITH_EXTENSIONS(Gui::ViewProviderPart, Gui::ViewProviderDragger)
PROPERTY_SOURCE_WITH_EXTENSIONS(Gui::ViewProviderPart, Gui::ViewProviderGeometryObject)
/**
@@ -62,7 +62,7 @@ ViewProviderPart::~ViewProviderPart() = default;
*/
void ViewProviderPart::onChanged(const App::Property* prop)
{
ViewProviderDragger::onChanged(prop);
ViewProviderGeometryObject::onChanged(prop);
}
void ViewProviderPart::setupContextMenu(QMenu* menu, QObject* receiver, const char* member)
@@ -74,7 +74,7 @@ void ViewProviderPart::setupContextMenu(QMenu* menu, QObject* receiver, const ch
act->setChecked(isActivePart());
func->trigger(act, [this]() { this->toggleActivePart(); });
ViewProviderDragger::setupContextMenu(menu, receiver, member);
ViewProviderGeometryObject::setupContextMenu(menu, receiver, member);
}
bool ViewProviderPart::isActivePart()

View File

@@ -23,7 +23,7 @@
#ifndef GUI_VIEWPROVIDER_ViewProviderPart_H
#define GUI_VIEWPROVIDER_ViewProviderPart_H
#include "ViewProviderDragger.h"
#include "ViewProviderGeometryObject.h"
#include "ViewProviderOriginGroup.h"
#include "ViewProviderFeaturePython.h"
@@ -31,7 +31,8 @@
namespace Gui
{
class GuiExport ViewProviderPart: public ViewProviderDragger, public ViewProviderOriginGroupExtension
class GuiExport ViewProviderPart: public ViewProviderGeometryObject,
public ViewProviderOriginGroupExtension
{
PROPERTY_HEADER_WITH_EXTENSIONS(Gui::ViewProviderPart);