Merge pull request #19019 from hyarion/refactor/countObjectsOfType

Refactor countObjectsOfType in selection and document
This commit is contained in:
Chris Hennes
2025-01-14 16:05:12 -06:00
committed by GitHub
31 changed files with 194 additions and 222 deletions

View File

@@ -328,7 +328,7 @@ void CmdSketcherEditSketch::activated(int iMsg)
bool CmdSketcherEditSketch::isActive()
{
return Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId()) == 1;
return Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() == 1;
}
DEF_STD_CMD_A(CmdSketcherLeaveSketch)
@@ -539,7 +539,7 @@ void CmdSketcherReorientSketch::activated(int iMsg)
bool CmdSketcherReorientSketch::isActive()
{
return Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId()) == 1;
return Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() == 1;
}
DEF_STD_CMD_A(CmdSketcherMapSketch)
@@ -763,12 +763,8 @@ void CmdSketcherMapSketch::activated(int iMsg)
bool CmdSketcherMapSketch::isActive()
{
App::Document* doc = App::GetApplication().getActiveDocument();
Base::Type sketch_type = Base::Type::fromName("Part::Part2DObject");
std::vector<Gui::SelectionObject> selobjs = Gui::Selection().getSelectionEx();
if (doc && doc->countObjectsOfType(sketch_type) > 0 && !selobjs.empty())
return true;
return false;
return doc && doc->countObjectsOfType<Part::Part2DObject>() > 0 && !selobjs.empty();
}
DEF_STD_CMD_A(CmdSketcherViewSketch)
@@ -843,7 +839,7 @@ bool CmdSketcherValidateSketch::isActive()
{
if (Gui::Control().activeDialog())
return false;
return Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId()) == 1;
return Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() == 1;
}
DEF_STD_CMD_A(CmdSketcherMirrorSketch)
@@ -970,7 +966,7 @@ void CmdSketcherMirrorSketch::activated(int iMsg)
bool CmdSketcherMirrorSketch::isActive()
{
return Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId()) > 0;
return Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() > 0;
}
DEF_STD_CMD_A(CmdSketcherMergeSketches)
@@ -1059,7 +1055,7 @@ void CmdSketcherMergeSketches::activated(int iMsg)
bool CmdSketcherMergeSketches::isActive()
{
return Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId()) > 1;
return Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() > 1;
}
// Acknowledgement of idea and original python macro goes to SpritKopf:

View File

@@ -141,7 +141,7 @@ void CmdSketcherToggleConstruction::activated(int iMsg)
{
Q_UNUSED(iMsg);
// Option A: nothing is selected change creation mode from/to construction
if (Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId()) == 0) {
if (Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() == 0) {
Gui::CommandManager& rcCmdMgr = Gui::Application::Instance->commandManager();

View File

@@ -81,7 +81,7 @@ bool isCreateConstraintActive(Gui::Document* doc)
&& doc->getInEdit()->isDerivedFrom(SketcherGui::ViewProviderSketch::getClassTypeId())) {
if (static_cast<SketcherGui::ViewProviderSketch*>(doc->getInEdit())->getSketchMode()
== ViewProviderSketch::STATUS_NONE) {
if (Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId())
if (Gui::Selection().countObjectsOfType<Sketcher::SketchObject>()
> 0) {
return true;
}
@@ -10013,7 +10013,7 @@ void CmdSketcherToggleDrivingConstraint::activated(int iMsg)
std::vector<Gui::SelectionObject> selection;
if (Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId()) > 0) {
if (Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() > 0) {
// Now we check whether we have a constraint selected or not.
// get the selection
@@ -10137,7 +10137,7 @@ void CmdSketcherToggleActiveConstraint::activated(int iMsg)
std::vector<Gui::SelectionObject> selection;
if (Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId()) > 0) {
if (Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() > 0) {
// Now we check whether we have a constraint selected or not.
// get the selection

View File

@@ -61,9 +61,7 @@ bool isSketcherVirtualSpaceActive(Gui::Document* doc, bool actsOnSelection)
if (!actsOnSelection) {
return true;
}
else if (Gui::Selection().countObjectsOfType(
Sketcher::SketchObject::getClassTypeId())
> 0) {
else if (Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() > 0) {
return true;
}
}
@@ -111,7 +109,7 @@ void CmdSketcherSwitchVirtualSpace::activated(int iMsg)
std::vector<Gui::SelectionObject> selection;
if (Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId()) > 0) {
if (Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() > 0) {
// Now we check whether we have a constraint selected or not.
selection = getSelection().getSelectionEx();

View File

@@ -510,10 +510,7 @@ bool SketcherGui::isCommandActive(Gui::Document* doc, bool actsOnSelection)
if (!actsOnSelection) {
return true;
}
else if (Gui::Selection().countObjectsOfType(Sketcher::SketchObject::getClassTypeId())
> 0) {
return true;
}
return Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() > 0;
}
}
@@ -531,11 +528,7 @@ bool SketcherGui::isSketcherBSplineActive(Gui::Document* doc, bool actsOnSelecti
if (!actsOnSelection) {
return true;
}
else if (Gui::Selection().countObjectsOfType(
Sketcher::SketchObject::getClassTypeId())
> 0) {
return true;
}
return Gui::Selection().countObjectsOfType<Sketcher::SketchObject>() > 0;
}
}
}