DO NOT DOWNLOAD - GET THE STABLE SOURCE FROM THE DOWNLOADS TAB
Fixes 21623 (adds tree rendering events to all trees that can support it) [TFS Changeset #64434]
This commit is contained in:
@@ -187,8 +187,9 @@ function openContent(id) {
|
||||
if (node != null)
|
||||
{
|
||||
Tree.Add(node);
|
||||
OnAfterNodeRender(ref Tree, ref node, EventArgs.Empty);
|
||||
}
|
||||
OnAfterNodeRender(ref Tree, ref node, EventArgs.Empty);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -142,8 +142,9 @@ function openMedia(id) {
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -380,7 +380,9 @@ namespace umbraco.cms.presentation.Trees
|
||||
this.id = id;
|
||||
else
|
||||
this.NodeKey = nodeId;
|
||||
this.Render(ref xTree);
|
||||
|
||||
this.Render(ref xTree);
|
||||
|
||||
return xTree.ToString();
|
||||
}
|
||||
|
||||
@@ -460,18 +462,18 @@ namespace umbraco.cms.presentation.Trees
|
||||
return treeCaption;
|
||||
}
|
||||
|
||||
//EVENTS
|
||||
/// <summary>
|
||||
/// The before node render event handler
|
||||
/// </summary>
|
||||
|
||||
#region Events
|
||||
|
||||
//These events are poorly designed because they cannot be implemented in the tree inheritance structure,
|
||||
//it would be up to the individual trees to ensure they launch the events which is poor design.
|
||||
//they are also named in appropriately in regards to standards and because everything is by ref, there is no need to
|
||||
//have 2 events, makes no difference if you want to modify the contents of the data.
|
||||
public delegate void BeforeNodeRenderEventHandler(ref XmlTree sender, ref XmlTreeNode node, EventArgs e);
|
||||
|
||||
/// <summary>
|
||||
/// The after node render event handler
|
||||
/// </summary>
|
||||
public delegate void AfterNodeRenderEventHandler(ref XmlTree sender, ref XmlTreeNode node, EventArgs e);
|
||||
|
||||
public static event BeforeNodeRenderEventHandler BeforeNodeRender;
|
||||
public static event AfterNodeRenderEventHandler AfterNodeRender;
|
||||
|
||||
/// <summary>
|
||||
/// Raises the <see cref="E:BeforeNodeRender"/> event.
|
||||
/// </summary>
|
||||
@@ -482,7 +484,7 @@ namespace umbraco.cms.presentation.Trees
|
||||
BeforeNodeRender(ref sender, ref node, e);
|
||||
}
|
||||
|
||||
public static event AfterNodeRenderEventHandler AfterNodeRender;
|
||||
|
||||
/// <summary>
|
||||
/// Raises the <see cref="E:AfterNodeRender"/> event.
|
||||
/// </summary>
|
||||
@@ -493,6 +495,10 @@ namespace umbraco.cms.presentation.Trees
|
||||
AfterNodeRender(ref sender, ref node, e);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -65,9 +65,16 @@ namespace umbraco.cms.presentation.Trees
|
||||
xDirNode.Icon = FolderIcon;
|
||||
xDirNode.OpenIcon = FolderIconOpen;
|
||||
xDirNode.HasChildren = dir.GetFiles().Length > 0 || dir.GetDirectories().Length > 0;
|
||||
|
||||
OnRenderFolderNode(ref xDirNode);
|
||||
|
||||
tree.Add(xDirNode);
|
||||
OnBeforeNodeRender(ref tree, ref xDirNode, EventArgs.Empty);
|
||||
if (xDirNode != null)
|
||||
{
|
||||
tree.Add(xDirNode);
|
||||
OnAfterNodeRender(ref tree, ref xDirNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
FileInfo[] fileInfo = dirInfo.GetFiles(FileSearchPattern);
|
||||
@@ -86,8 +93,14 @@ namespace umbraco.cms.presentation.Trees
|
||||
xFileNode.OpenIcon = "doc.gif";
|
||||
|
||||
OnRenderFileNode(ref xFileNode);
|
||||
OnBeforeNodeRender(ref tree, ref xFileNode, EventArgs.Empty);
|
||||
if (xFileNode != null)
|
||||
{
|
||||
tree.Add(xFileNode);
|
||||
OnAfterNodeRender(ref tree, ref xFileNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
|
||||
tree.Add(xFileNode);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ using System.IO;
|
||||
using System.Text;
|
||||
using System.Web;
|
||||
using System.Xml;
|
||||
using System.Linq;
|
||||
using System.Configuration;
|
||||
using umbraco.BasePages;
|
||||
using umbraco.BusinessLogic;
|
||||
|
||||
@@ -35,7 +35,14 @@ namespace umbraco.cms.presentation.Trees
|
||||
XmlTreeNode xNode = XmlTreeNode.Create(this);
|
||||
xNode.Text = "Error";
|
||||
xNode.Menu = null;
|
||||
tree.Add(xNode);
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected override void CreateRootNode(ref XmlTreeNode rootNode)
|
||||
|
||||
@@ -52,8 +52,14 @@ namespace umbraco.cms.presentation.Trees
|
||||
node.Text = user.Name;
|
||||
node.Action = "javascript:openUserPermissions('" + user.Id.ToString() + "');";
|
||||
node.Icon = "user.gif";
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref node, EventArgs.Empty);
|
||||
if (node != null)
|
||||
{
|
||||
tree.Add(node);
|
||||
OnAfterNodeRender(ref tree, ref node, EventArgs.Empty);
|
||||
}
|
||||
|
||||
tree.Add(node);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,8 +39,13 @@ function openUserTypes(id) {
|
||||
node.Action = string.Format("javascript:openUserTypes({0})", userType.Id.ToString());
|
||||
node.Icon = "user.gif";
|
||||
node.Text = userType.Alias;
|
||||
|
||||
tree.Add(node);
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref node, EventArgs.Empty);
|
||||
if (node != null)
|
||||
{
|
||||
tree.Add(node);
|
||||
OnAfterNodeRender(ref tree, ref node, EventArgs.Empty);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -101,12 +101,6 @@ namespace umbraco.cms.presentation.Trees
|
||||
return "";
|
||||
}
|
||||
|
||||
[System.Runtime.InteropServices.DispIdAttribute(-4)]
|
||||
public IEnumerator GetEnumerator()
|
||||
{
|
||||
return treeCollection.GetEnumerator();
|
||||
}
|
||||
|
||||
public void Add(XmlTreeNode obj)
|
||||
{
|
||||
treeCollection.Add(obj);
|
||||
@@ -155,7 +149,13 @@ namespace umbraco.cms.presentation.Trees
|
||||
set { __treeCollection = value; }
|
||||
}
|
||||
|
||||
}
|
||||
[System.Runtime.InteropServices.DispIdAttribute(-4)]
|
||||
public IEnumerator GetEnumerator()
|
||||
{
|
||||
return (treeCollection as IEnumerable).GetEnumerator();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Used for serializing data to XML as the data structure for the JavaScript tree
|
||||
|
||||
@@ -72,7 +72,14 @@ namespace umbraco
|
||||
xNode.Icon = "developerCacheTypes.gif";
|
||||
xNode.OpenIcon = "developerCacheTypes.gif";
|
||||
xNode.HasChildren = itemCount > 0;
|
||||
tree.Add(xNode);
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -80,8 +80,14 @@ function openCacheItem(id) {
|
||||
xNode.Action = "javascript:openCacheItem('" + a[i] + "');";
|
||||
xNode.Icon = "developerCacheItem.gif";
|
||||
xNode.OpenIcon = "developerCacheItem.gif";
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
tree.Add(xNode);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -64,8 +64,14 @@ function openDataType(id) {
|
||||
xNode.Action = "javascript:openDataType(" + dt.Id + ");";
|
||||
xNode.Icon = "developerDatatype.gif";
|
||||
xNode.OpenIcon = "developerDatatype.gif";
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
tree.Add(xNode);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -77,7 +77,14 @@ namespace umbraco
|
||||
xNode.NodeType = "DictionaryItem"; //this shouldn't be like this, it should be this.TreeAlias but the ui.config file points to this name.
|
||||
xNode.Source = this.GetTreeServiceUrl(di.id);
|
||||
xNode.HasChildren = di.hasChildren;
|
||||
tree.Add(xNode);
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -60,8 +60,14 @@ function openDictionary() {
|
||||
xNode.Action = "javascript:openLanguage(" + l.id + ");";
|
||||
xNode.Icon = "settingLanguage.gif";
|
||||
xNode.OpenIcon = "settingLanguage.gif";
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
tree.Add(xNode);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -56,7 +56,13 @@ function openMediaType(id) {
|
||||
xNode.Icon = "settingDataType.gif";
|
||||
xNode.OpenIcon = "settingDataType.gif";
|
||||
|
||||
tree.Add(xNode);
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -75,7 +75,13 @@ function openMemberGroup(id) {
|
||||
{
|
||||
xNode.Menu = null;
|
||||
}
|
||||
tree.Add(xNode);
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
}
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -91,7 +91,14 @@ function openNodeType(id) {
|
||||
xNode.Icon = "settingMasterDataType.gif";
|
||||
xNode.OpenIcon = "settingMasterDataType.gif";
|
||||
}
|
||||
tree.Add(xNode);
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -59,7 +59,13 @@ namespace umbraco
|
||||
xNode.Icon = "settingCssItem.gif";
|
||||
xNode.OpenIcon = "settingCssItem.gif";
|
||||
|
||||
tree.Add(xNode);
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -69,7 +69,14 @@ namespace umbraco
|
||||
xNode.Icon = "settingCss.gif";
|
||||
xNode.OpenIcon = "settingCss.gif";
|
||||
xNode.NodeType = "stylesheet"; //this shouldn't be like this, it should be this.TreeAlias but the ui.config file points to this name.
|
||||
tree.Add(xNode);
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -69,7 +69,14 @@ function openTemplate(id) {
|
||||
xNode.Icon = "settingMasterTemplate.gif";
|
||||
xNode.OpenIcon = "settingMasterTemplate.gif";
|
||||
}
|
||||
tree.Add(xNode);
|
||||
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -69,7 +69,13 @@ namespace umbraco {
|
||||
xNode.Icon = ".sprTreeSettingLanguage";
|
||||
xNode.OpenIcon = ".sprTreeSettingLanguage";
|
||||
|
||||
tree.Add(xNode);
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -114,7 +120,13 @@ namespace umbraco {
|
||||
xNode.Icon = ".sprTreeSettingLanguage";
|
||||
xNode.OpenIcon = ".sprTreeSettingLanguage";
|
||||
|
||||
tree.Add(xNode);
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -98,7 +98,13 @@ function openUser(id) {
|
||||
xNode.Icon = "user.gif";
|
||||
xNode.OpenIcon = "user.gif";
|
||||
|
||||
tree.Add(xNode);
|
||||
OnBeforeNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
if (xNode != null)
|
||||
{
|
||||
tree.Add(xNode);
|
||||
OnAfterNodeRender(ref tree, ref xNode, EventArgs.Empty);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user