public DomElement GetPresentationDomNode(DomElement hostNode)
{
if (pnode != null) return pnode;
//-----------------------------------
var doc = hostNode.OwnerDocument;
this.pnode = doc.CreateElement("div");
pnode.AddChild("img", item_icon =>
{
menuIcon = item_icon;
menuIcon.AttachMouseDownEvent(e =>
{
//****
this.MaintenanceParentOpenState();
if (this.IsOpened)
{
this.Close();
}
else
{
this.Open();
}
e.StopPropagation();
});
menuIcon.AttachMouseUpEvent(e =>
{
this.UnmaintenanceParentOpenState();
e.StopPropagation();
});
menuIcon.AttachEventOnMouseLostFocus(e =>
{
if (!this.MaintenaceOpenState)
{
this.CloseRecursiveUp();
}
});
});
pnode.AddChild("span", content =>
{
if (menuItemText != null)
{
pnode.AddTextContent(this.menuItemText);
}
});
//--------------------------------------------------------
//create simple menu item box
if (childItems != null)
{
floatPart = new MenuBox(400, 200);
int j = childItems.Count;
for (int i = 0; i < j; ++i)
{
floatPart.AddChildBox(childItems[i]);
}
}
return pnode;
}