Basically, I implemented the same ICustomNavigationItem based on the Polling app.
So, the Obsolete message was to use CustomNavigationItem, which would be changing the base class, so I don't think that's right..
here's the interface.
namespace Telligent.Evolution.Extensibility.UI.Version2
{
[Obsolete("Use the Version3 CustomNavigationItem class instead.", false)]
public interface ICustomNavigationItem
{
ICustomNavigationPlugin Plugin { get; }
string Label { get; }
string Url { get; }
Guid UniqueID { get; }
ICustomNavigationItem[] Children { get; set; }
string CssClass { get; }
ICustomNavigationItemConfiguration Configuration { get; }
bool IsSelected(string currentFullUrl);
bool IsVisible(int userID);
}
}the big difference is the "IsSelected" and the "IsVisible" are callbacks. do we still use the polling example? is there an example of how to use the CustomNavigationItem?
namespace Telligent.Evolution.Extensibility.UI.Version3
{
public class CustomNavigationItem
{
public CustomNavigationItem();
public Func<string> DefaultLabel { get; set; }
public Func<string> DefaultDescription { get; set; }
public virtual string DefaultAvatarUrl { get; set; }
public virtual string Url { get; set; }
public virtual string CssClass { get; set; }
public CustomNavigationItemIsVisibleCallback IsVisible { get; set; }
public CustomNavigationItemIsSelectedCallback IsSelected { get; set; }
}
}