This commit is contained in:
Kathy Ruffing 2009-11-13 13:40:08 +00:00
parent c90633f795
commit bb048290ef

View File

@ -198,6 +198,7 @@ namespace VEPROMS.CSLA.Library
try try
{ {
VETreeNode tmp = new VETreeNode(o); VETreeNode tmp = new VETreeNode(o);
//tNext("Allocate VETreeNode"); //tNext("Allocate VETreeNode");
//tmp.ResetNode(); //tmp.ResetNode();
if (o.HasChildren) if (o.HasChildren)
@ -224,6 +225,36 @@ namespace VEPROMS.CSLA.Library
} }
} }
void myItemInfo_Deleted(object sender)
{
VETreeNode parnode = Parent as VETreeNode;
PartInfo pi = parnode.VEObject as PartInfo;
Remove();
// get rid of 'Steps', 'RNOs', i.e. grouping nodes, if there are no children.
if (pi != null && parnode.Nodes.Count == 0)
{
VETreeNode grndparnode = parnode.Parent as VETreeNode;
parnode.Remove();
// if only 'Steps' node is left, move steps 'up' a level.
if (grndparnode != null && grndparnode.Nodes.Count == 1)
{
VETreeNode sibnode = grndparnode.Nodes[0] as VETreeNode;
PartInfo pisib = sibnode.VEObject as PartInfo;
if (pisib != null && (pisib.ToString() == "Sections" || pisib.ToString() == "Steps"))
{
if (!sibnode.ChildrenLoaded) sibnode.LoadChildren();
while (sibnode.Nodes.Count > 0)
{
VETreeNode tmp = sibnode.Nodes[0] as VETreeNode;
tmp.Remove();
grndparnode.Nodes.Add(tmp);
}
sibnode.Remove();
}
}
}
}
//public IVEReadOnlyItem GetCsla() //public IVEReadOnlyItem GetCsla()
//{ //{
// return _VEObject; // return _VEObject;
@ -237,7 +268,19 @@ namespace VEPROMS.CSLA.Library
{ {
_VEObject = o;// Save the BusinessObject _VEObject = o;// Save the BusinessObject
ResetNode(); ResetNode();
ItemInfo myItemInfo = o as ItemInfo;
if (myItemInfo != null)
{
myItemInfo.Deleted += new ItemInfoEvent(myItemInfo_Deleted);
myItemInfo.MyContent.Changed += new ContentInfoEvent(MyContent_Changed);
}
} }
void MyContent_Changed(object sender)
{
Text = _VEObject.ToString();
}
public VETreeNode(string s) public VETreeNode(string s)
: base(s) : base(s)
{ {