public override void OnDragOver(DiagramDragEventArgs e)
{
if (e.Data.GetFormats().Contains("VSToolboxUniqueID"))
{
var model = this.Diagram.ModelElement as nHydrateModel;
var typeName = (e.Data.GetData("VSToolboxUniqueID") as MemoryStream).GetString().Replace("\0", string.Empty);
if (typeName == "nHydrate.DslPackage.ViewToolboxItem")
{
if ((model.DiagramVisibility & VisibilityTypeConstants.View) != VisibilityTypeConstants.View)
{
e.Effect = DragDropEffects.None;
return;
}
}
else if (typeName == "nHydrate.DslPackage.StoredProcedureToolboxItem")
{
if ((model.DiagramVisibility & VisibilityTypeConstants.StoredProcedure) != VisibilityTypeConstants.StoredProcedure)
{
e.Effect = DragDropEffects.None;
return;
}
}
else if (typeName == "nHydrate.DslPackage.FunctionToolboxItem")
{
if ((model.DiagramVisibility & VisibilityTypeConstants.Function) != VisibilityTypeConstants.Function)
{
e.Effect = DragDropEffects.None;
return;
}
}
}
base.OnDragOver(e);
}