Merge pull request #20649 from pieterhijma/viewprovider-toggle-visibility

[Core] Allow setting visibility toggling in the ViewProvider
This commit is contained in:
Chris Hennes
2025-04-14 10:45:14 -05:00
committed by GitHub
13 changed files with 85 additions and 31 deletions

View File

@@ -101,6 +101,7 @@ PROPERTY_SOURCE(FemGui::ViewProviderFemAnalysis, Gui::ViewProviderDocumentObject
ViewProviderFemAnalysis::ViewProviderFemAnalysis()
{
setToggleVisibility(ToggleVisibilityMode::NoToggleVisibility);
sPixmap = "FEM_Analysis";
}
@@ -147,11 +148,6 @@ std::vector<App::DocumentObject*> ViewProviderFemAnalysis::claimChildren() const
return Gui::ViewProviderDocumentObjectGroup::claimChildren();
}
std::vector<std::string> ViewProviderFemAnalysis::getDisplayModes() const
{
return {"Analysis"};
}
void ViewProviderFemAnalysis::hide()
{
Gui::ViewProviderDocumentObjectGroup::hide();

View File

@@ -75,8 +75,6 @@ public:
void setupContextMenu(QMenu*, QObject*, const char*) override;
/// list of all possible display modes
std::vector<std::string> getDisplayModes() const override;
/// shows solid in the tree
bool isShow() const override
{

View File

@@ -41,16 +41,12 @@ PROPERTY_SOURCE(FemGui::ViewProviderSolver, Gui::ViewProviderDocumentObject)
ViewProviderSolver::ViewProviderSolver()
{
setToggleVisibility(ToggleVisibilityMode::NoToggleVisibility);
sPixmap = "FEM_SolverStandard";
}
ViewProviderSolver::~ViewProviderSolver() = default;
std::vector<std::string> ViewProviderSolver::getDisplayModes() const
{
return {"Solver"};
}
bool ViewProviderSolver::onDelete(const std::vector<std::string>&)
{
// warn the user if the object has unselected children

View File

@@ -53,8 +53,6 @@ public:
{
return Visibility.getValue();
}
/// A list of all possible display modes
std::vector<std::string> getDisplayModes() const override;
// handling when object is deleted
bool onDelete(const std::vector<std::string>&) override;

View File

@@ -50,7 +50,10 @@ using namespace Spreadsheet;
PROPERTY_SOURCE(SpreadsheetGui::ViewProviderSheet, Gui::ViewProviderDocumentObject)
ViewProviderSheet::ViewProviderSheet() = default;
ViewProviderSheet::ViewProviderSheet()
{
setToggleVisibility(ToggleVisibilityMode::NoToggleVisibility);
}
ViewProviderSheet::~ViewProviderSheet()
{
@@ -59,18 +62,6 @@ ViewProviderSheet::~ViewProviderSheet()
}
}
void ViewProviderSheet::setDisplayMode(const char* ModeName)
{
ViewProviderDocumentObject::setDisplayMode(ModeName);
}
std::vector<std::string> ViewProviderSheet::getDisplayModes() const
{
std::vector<std::string> StrList;
StrList.emplace_back("Spreadsheet");
return StrList;
}
QIcon ViewProviderSheet::getIcon() const
{
return QIcon(QLatin1String(":icons/Spreadsheet.svg"));

View File

@@ -46,12 +46,10 @@ public:
/// destructor.
~ViewProviderSheet() override;
void setDisplayMode(const char* ModeName) override;
bool useNewSelectionModel() const override
{
return false;
}
std::vector<std::string> getDisplayModes() const override;
bool doubleClicked() override;
void setupContextMenu(QMenu* menu, QObject* receiver, const char* member) override;