Measure: Migrate old App::MeasureDistance to new type
This commit is contained in:
@@ -93,6 +93,7 @@ PyMOD_INIT_FUNC(Measure)
|
||||
Measure::Measurement ::init();
|
||||
|
||||
// umf classes
|
||||
Measure::MeasureDistanceType ::init();
|
||||
Measure::MeasureBase ::init();
|
||||
Measure::MeasurePython ::init();
|
||||
Measure::MeasureAngle ::init();
|
||||
|
||||
@@ -291,3 +291,43 @@ std::vector<App::DocumentObject*> MeasureDistanceDetached::getSubject() const
|
||||
}
|
||||
|
||||
|
||||
|
||||
Base::Type MeasureDistanceType::getClassTypeId()
|
||||
{
|
||||
return Base::Type::badType();
|
||||
}
|
||||
|
||||
Base::Type MeasureDistanceType::getTypeId() const
|
||||
{
|
||||
return Base::Type::badType();
|
||||
}
|
||||
|
||||
void MeasureDistanceType::init()
|
||||
{
|
||||
initSubclass(MeasureDistanceType::classTypeId,
|
||||
"App::MeasureDistance",
|
||||
"App::DocumentObject",
|
||||
&(MeasureDistanceType::create));
|
||||
}
|
||||
|
||||
void* MeasureDistanceType::create()
|
||||
{
|
||||
return new MeasureDistanceDetached();
|
||||
}
|
||||
|
||||
Base::Type MeasureDistanceType::classTypeId = Base::Type::badType();
|
||||
|
||||
|
||||
|
||||
// Migrate old MeasureDistance Type
|
||||
void MeasureDistanceDetached::handleChangedPropertyName(Base::XMLReader &reader,
|
||||
const char * TypeName,
|
||||
const char *PropName)
|
||||
{
|
||||
if (strcmp(PropName, "P1") == 0 && strcmp(TypeName, "App::PropertyVector") == 0) {
|
||||
Position1.Restore(reader);
|
||||
}
|
||||
else if (strcmp(PropName, "P2") == 0 && strcmp(TypeName, "App::PropertyVector") == 0) {
|
||||
Position2.Restore(reader);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,6 +38,17 @@
|
||||
namespace Measure
|
||||
{
|
||||
|
||||
class MeasureDistanceType: public Base::BaseClass
|
||||
{
|
||||
public:
|
||||
static Base::Type getClassTypeId();
|
||||
Base::Type getTypeId() const override;
|
||||
static void init();
|
||||
static void* create();
|
||||
|
||||
private:
|
||||
static Base::Type classTypeId;
|
||||
};
|
||||
|
||||
|
||||
class MeasureExport MeasureDistance : public Measure::MeasureBaseExtendable<Part::MeasureDistanceInfo>
|
||||
@@ -115,6 +126,9 @@ public:
|
||||
// Return the object we are measuring
|
||||
std::vector<App::DocumentObject*> getSubject() const override;
|
||||
|
||||
void handleChangedPropertyName(Base::XMLReader &reader,
|
||||
const char * TypeName,
|
||||
const char *PropName) override;
|
||||
|
||||
private:
|
||||
void onChanged(const App::Property* prop) override;
|
||||
|
||||
Reference in New Issue
Block a user