private void OnChangeFeature(ESRI.ArcGIS.Geodatabase.IObject obj)
{
IFeatureChanges pFeatChange = null;
try
{
inFeature = obj as IFeature;
bool bIsFabricRecord = false;
if (inFeature != null)
{
if (AAState._fabricObjectClassIds != null)
bIsFabricRecord = AAState._fabricObjectClassIds.Contains(obj.Class.ObjectClassID);
pFeatChange = (IFeatureChanges)inFeature;
if (pFeatChange.ShapeChanged)
{
if (bIsFabricRecord)
{
if (pFeatChange.OriginalShape.IsEmpty)
sendEvent(obj, "ON_CREATE"); //original shape empty, but shape change means new parcel
else
sendEvent(obj, "ON_CHANGE");//treat geometry changes as standard change for fabric
}
else
sendEvent(obj, "ON_CHANGEGEO");
}
else
{
sendEvent(obj, "ON_CHANGE");
}
}
else
{
sendEvent(obj, "ON_CHANGE");
}
}
catch (Exception ex)
{
MessageBox.Show(A4LGSharedFunctions.Localizer.GetString("AttributeAssistantEditorChain7") + ex.Message + " \n" + obj.Class.AliasName + ": " + obj.OID);
}
finally
{
inFeature = null;
}
}