예제 #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="TreeView"/> class.
        /// </summary>
        /// <param name="viewContext">The view context.</param>
        /// <param name="clientSideObjectWriterFactory">The client side object writer factory.</param>
        /// <param name="urlGenerator">The URL generator.</param>
        /// <param name="urlGenerator">The navigation item authorization.</param>
        /// <param name="builderFactory">The builder factory.</param>
        public TreeView(ViewContext viewContext, IClientSideObjectWriterFactory clientSideObjectWriterFactory, IUrlGenerator urlGenerator, INavigationItemAuthorization authorization, ITreeViewHtmlBuilderFactory factory)
            : base(viewContext, clientSideObjectWriterFactory)
        {
            Guard.IsNotNull(urlGenerator, "urlGenerator");
            Guard.IsNotNull(authorization, "authorization");
            Guard.IsNotNull(factory, "factory");

            UrlGenerator   = urlGenerator;
            Authorization  = authorization;
            builderFactory = factory;

            ClientEvents = new TreeViewClientEvents();

            ScriptFileNames.AddRange(new[] { "telerik.common.js", "telerik.treeview.js" });

            DragAndDrop = new TreeViewDragAndDropSettings();

            DataBinding = new TreeViewDataBindingConfiguration();
            Ajax        = DataBinding.Ajax;
            WebService  = DataBinding.WebService;

            this.Effects = new Effects();
            defaultEffects.Each(el => Effects.Container.Add(el));

            Items = new LinkedObjectCollection <TreeViewItem>(null);

            ShowLines = true;

            SelectedIndex    = -1;
            SecurityTrimming = true;
        }
예제 #2
0
        public PanelBar(ViewContext viewContext, IClientSideObjectWriterFactory clientSideObjectWriterFactory, IUrlGenerator urlGenerator, INavigationItemAuthorization authorization, INavigationComponentHtmlBuilderFactory <PanelBar, PanelBarItem> rendererFactory)
            : base(viewContext, clientSideObjectWriterFactory)
        {
            Guard.IsNotNull(urlGenerator, "urlGenerator");
            Guard.IsNotNull(authorization, "authorization");

            Authorization = authorization;
            UrlGenerator  = urlGenerator;

            this.builderFactory = rendererFactory;

            ScriptFileNames.AddRange(new[] { "telerik.common.js", "telerik.panelbar.js" });

            ClientEvents = new PanelBarClientEvents();

            this.Effects = new Effects();
            defaultEffects.Each(el => Effects.Container.Add(el));

            ExpandMode    = PanelBarExpandMode.Multiple;
            HighlightPath = true;

            Items = new LinkedObjectCollection <PanelBarItem>(null);

            SelectedIndex    = -1;
            SecurityTrimming = true;
        }
예제 #3
0
        public TabStrip(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator, INavigationItemAuthorization authorization)
            : base(viewContext, initializer)
        {
            UrlGenerator  = urlGenerator;
            Authorization = authorization;

            Animation = new PopupAnimation();

            Items            = new List <TabStripItem>();
            SelectedIndex    = -1;
            HighlightPath    = true;
            SecurityTrimming = new SecurityTrimming();
        }
예제 #4
0
        public Menu(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator, INavigationItemAuthorization authorization)
            : base(viewContext, initializer)
        {
            Animation = new PopupAnimation();

            UrlGenerator  = urlGenerator;
            Authorization = authorization;

            Items = new LinkedObjectCollection <MenuItem>(null);

            CloseOnClick     = true;
            HighlightPath    = true;
            SecurityTrimming = true;
        }
예제 #5
0
파일: PanelBar.cs 프로젝트: Zedfa/Core
        public PanelBar(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator, INavigationItemAuthorization authorization)
            : base(viewContext, initializer)
        {
            Authorization = authorization;
            UrlGenerator  = urlGenerator;

            Animation = new ExpandableAnimation();

            ExpandMode    = PanelBarExpandMode.Multiple;
            HighlightPath = true;

            Items = new LinkedObjectCollection <PanelBarItem>(null);

            SelectedIndex    = -1;
            SecurityTrimming = new SecurityTrimming();
        }
예제 #6
0
        public TreeView(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator, INavigationItemAuthorization authorization)
            : base(viewContext, initializer)
        {
            UrlGenerator  = urlGenerator;
            Authorization = authorization;

            Animation = new ExpandableAnimation();

            this.DragAndDrop = false;

            Items = new LinkedObjectCollection <TreeViewItem>(null);

            SelectedIndex    = -1;
            SecurityTrimming = true;

            LoadOnDemand = true;

            Checkboxes = new TreeViewCheckboxesSettings();

            DataSource = new DataSource();
        }
예제 #7
0
        public TabStrip(ViewContext viewContext, IClientSideObjectWriterFactory clientSideObjectWriterFactory, IUrlGenerator urlGenerator, INavigationItemAuthorization authorization, ITabStripHtmlBuilderFactory rendererFactory) : base(viewContext, clientSideObjectWriterFactory)
        {
            Guard.IsNotNull(urlGenerator, "urlGenerator");
            Guard.IsNotNull(authorization, "authorization");
            Guard.IsNotNull(rendererFactory, "rendererFactory");

            this.builderFactory = rendererFactory;

            UrlGenerator  = urlGenerator;
            Authorization = authorization;

            ScriptFileNames.AddRange(new[] { "telerik.common.js", "telerik.tabstrip.js" });

            this.Effects = new Effects();
            defaultEffects.Each(el => Effects.Container.Add(el));

            ClientEvents = new TabStripClientEvents();

            Items         = new List <TabStripItem>();
            SelectedIndex = -1;
            HighlightPath = true;
        }
예제 #8
0
        public Menu(ViewContext viewContext, IClientSideObjectWriterFactory clientSideObjectWriterFactory, IUrlGenerator urlGenerator, INavigationItemAuthorization authorization, INavigationComponentHtmlBuilderFactory <Menu, MenuItem> factory)
            : base(viewContext, clientSideObjectWriterFactory)
        {
            Guard.IsNotNull(urlGenerator, "urlGenerator");
            Guard.IsNotNull(authorization, "authorization");
            Guard.IsNotNull(factory, "factory");

            UrlGenerator    = urlGenerator;
            Authorization   = authorization;
            rendererFactory = factory;

            ClientEvents = new MenuClientEvents();

            ScriptFileNames.AddRange(new[] { "telerik.common.js", "telerik.menu.js" });

            this.Effects = new Effects();
            defaultEffects.Each(el => Effects.Container.Add(el));

            Items = new LinkedObjectCollection <MenuItem>(null);

            SelectedIndex = -1;
            HighlightPath = true;
        }
 /// <summary>
 /// Verifies whether collection of <see cref="INavigatable"/> objects is accessible.
 /// </summary>
 /// <typeparam name="T">Object of <see cref="INavigatable"/> type.</typeparam>
 /// <param name="item">The <see cref="INavigatable"/> object.</param>
 /// <param name="authorization">The <see cref="INavigationItemAuthorization"/> object.</param>
 /// <param name="viewContext">The <see cref="ViewContext"/> object</param>
 public static bool IsAccessible <T>(this IEnumerable <T> items, INavigationItemAuthorization authorization, ViewContext viewContext)
 {
     return(items.Any(item => authorization.IsAccessibleToUser(viewContext.RequestContext, (INavigatable)item)));
 }
 /// <summary>
 /// Verify whether the <see cref="INavigatable"/> object is accessible.
 /// </summary>
 /// <param name="item">The <see cref="INavigatable"/> object.</param>
 /// <param name="authorization">The <see cref="INavigationItemAuthorization"/> object.</param>
 /// <param name="viewContext">The <see cref="ViewContext"/> object</param>
 public static bool IsAccessible(this INavigatable item, INavigationItemAuthorization authorization, ViewContext viewContext)
 {
     return(authorization.IsAccessibleToUser(viewContext.RequestContext, item));
 }