PD: do not use active document in task dialogs because this is error-prone
and optimize string creation in TaskSketchBasedParameters::getFaceReference
This commit is contained in:
@@ -197,15 +197,16 @@ QVariant TaskSketchBasedParameters::objectNameByLabel(const QString& label,
|
||||
return QVariant(); // no such feature found
|
||||
}
|
||||
|
||||
QString TaskSketchBasedParameters::getFaceReference(const QString& obj, const QString& sub)
|
||||
QString TaskSketchBasedParameters::getFaceReference(const QString& obj, const QString& sub) const
|
||||
{
|
||||
App::Document* doc = this->vp->getObject()->getDocument();
|
||||
QString o = obj.left(obj.indexOf(QString::fromLatin1(":")));
|
||||
|
||||
if (o.isEmpty())
|
||||
return QString();
|
||||
else
|
||||
return QString::fromLatin1("(App.activeDocument().") + o +
|
||||
QString::fromLatin1(", [\"") + sub + QString::fromLatin1("\"])");
|
||||
|
||||
return QString::fromLatin1("(App.getDocument(\"%1\").%2, [\"%3\"])")
|
||||
.arg(QString::fromLatin1(doc->getName()), o, sub);
|
||||
}
|
||||
|
||||
TaskSketchBasedParameters::~TaskSketchBasedParameters()
|
||||
|
||||
@@ -58,7 +58,7 @@ protected:
|
||||
/// For faster access a suggested name can be tested, first.
|
||||
QVariant objectNameByLabel(const QString& label, const QVariant& suggest) const;
|
||||
|
||||
static QString getFaceReference(const QString& obj, const QString& sub);
|
||||
QString getFaceReference(const QString& obj, const QString& sub) const;
|
||||
};
|
||||
|
||||
class TaskDlgSketchBasedParameters : public PartDesignGui::TaskDlgFeatureParameters
|
||||
|
||||
Reference in New Issue
Block a user