コード例 #1
0
 protected override void OnLoad(EventArgs e)
 {
     Assert.ArgumentNotNull(e, "e");
     base.OnLoad(e);
     if (!Context.ClientPage.IsEvent)
     {
         this.SelectOption.Click = string.Format("ChangeMode(\"{0}\")", "Select");
         this.CreateOption.Click = string.Format("ChangeMode(\"{0}\")", "Create");
         this.CloneOption.Click  = string.Format("ChangeMode(\"{0}\")", "Clone");
         this.SearchOption.Click = string.Format("ChangeMode(\"{0}\")", "Search");
         SelectDatasourceOptions options = SelectItemOptions.Parse <SelectDatasourceOptions>();
         if (options.DatasourcePrototype == null)
         {
             this.DisableCreateOption();
         }
         else
         {
             this.Prototype = options.DatasourcePrototype;
         }
         if (!string.IsNullOrEmpty(options.DatasourceItemDefaultName))
         {
             this.NewDatasourceName.Value = this.GetNewItemDefaultName(options.DatasourceRoot, options.DatasourceItemDefaultName);
         }
         if (options.ContentLanguage != null)
         {
             this.ContentLanguage = options.ContentLanguage;
         }
         if (!string.IsNullOrEmpty(options.CurrentDatasource))
         {
             this.CurrentDatasourcePath = options.CurrentDatasource;
             if (options.DatasourceRoot != null)
             {
                 string copyOfName = string.Empty;
                 if (!string.IsNullOrEmpty(options.DatasourceItemDefaultName))
                 {
                     copyOfName = ItemUtil.GetCopyOfName(options.DatasourceRoot, options.DatasourceItemDefaultName);
                 }
                 if (this.CurrentDatasourceItem != null)
                 {
                     copyOfName = this.CloneName.Value = ItemUtil.GetCopyOfName(options.DatasourceRoot, this.CurrentDatasourceItem.Name);
                 }
                 this.CloneName.Value = copyOfName;
             }
         }
         else
         {
             this.CloneOption.Visible = false;
         }
         this.SetDataContexts();
         Item folder = base.DataContext.GetFolder();
         this.SetControlsForSelection(folder);
         this.SetSectionHeader();
     }
 }
コード例 #2
0
        /// <summary>
        ///     The on load.
        /// </summary>
        /// <param name="e">
        ///     The e.
        /// </param>
        protected override void OnLoad(EventArgs e)
        {
            Assert.ArgumentNotNull(e, "e");
            base.OnLoad(e);
            if (Context.ClientPage.IsEvent)
            {
                return;
            }

            var options = SelectItemOptions.Parse <SelectBaseLayoutOptions>();

            options.Items.Insert(0, CreateNullSelectionItem());
            Previews.InnerHtml = RenderPreviews(options.Items, options.CurrentBaseLayoutId);
            if (!ID.IsNullOrEmpty(options.CurrentBaseLayoutId))
            {
                SelectedItemId = options.CurrentBaseLayoutId.ToShortID().ToString();
            }
        }
コード例 #3
0
        protected override void OnLoad(EventArgs e)
        {
            Assert.ArgumentNotNull((object)e, "e");
            IsOpenPropertiesChecked = Registry.GetBool("/Current_User/SelectRendering/IsOpenPropertiesChecked");
            SelectRenderingOptions renderingOptions = SelectItemOptions.Parse <SelectRenderingOptions>();

            base.OnLoad(e);
            if (Context.ClientPage.IsEvent)
            {
                return;
            }

            var groupedRenderings = renderingOptions.Items?.GroupBy(i => i.Parent.Name).ToArray() ?? new IGrouping <string, Item> [0];

            if (renderingOptions.ShowTree || groupedRenderings.Length == 0)
            {
                var gridPanel = Renderings.Parent as GridPanel;
                gridPanel?.SetExtensibleProperty(Tabs, "class", "scDisplayNone");
            }
            else
            {
                foreach (var renderingGroup in groupedRenderings)
                {
                    var newTab = new Tab
                    {
                        Header   = renderingGroup.Key,
                        CssClass = "scTabPage"
                    };
                    newTab.Controls.Add(new LiteralControl(RenderPreviews(renderingGroup)));
                    Tabs.Controls.Add(newTab);
                }

                Renderings.Visible = false;
                var gridPanel = Renderings.Parent as GridPanel;
                gridPanel?.SetExtensibleProperty(Renderings, "class", "scDisplayNone");
            }
        }
コード例 #4
0
        /// <summary>
        /// Raises the load event.
        /// </summary>
        /// <param name="e">The <see cref="T:System.EventArgs"/> instance containing the event data.</param>
        protected override void OnLoad(EventArgs e)
        {
            Assert.ArgumentNotNull(e, "e");

            base.OnLoad(e);

            if (Context.ClientPage.IsEvent)
            {
                return;
            }
            IsOpenPropertiesChecked = Registry.GetBool("/Current_User/SelectRendering/IsOpenPropertiesChecked");
            var renderingOptions = SelectItemOptions.Parse <SelectRenderingOptions>();

            if (renderingOptions.ShowOpenProperties)
            {
                OpenPropertiesBorder.Visible = true;
                OpenProperties.Checked       = this.IsOpenPropertiesChecked;
            }
            if (renderingOptions.ShowPlaceholderName)
            {
                PlaceholderNameBorder.Visible = true;
                PlaceholderName.Value         = renderingOptions.PlaceholderName;
            }
            if (!renderingOptions.ShowTree)
            {
                TreeviewContainer.Class   = string.Empty;
                TreeviewContainer.Visible = false;
                TreeSplitter.Visible      = false;
                var gridPanel = TreeviewContainer.Parent as GridPanel;
                if (gridPanel != null)
                {
                    gridPanel.SetExtensibleProperty(TreeviewContainer, "class", "scDisplayNone");
                }

                var groupedRenderings = renderingOptions.Items.GroupBy(i => i.Parent.Name).ToArray();
                if (groupedRenderings.Length <= 1)
                {
                    Renderings.InnerHtml = RenderPreviews(renderingOptions.Items);

                    gridPanel = Tabs.Parent as GridPanel;
                    if (gridPanel != null)
                    {
                        gridPanel.SetExtensibleProperty(Tabs, "class", "scDisplayNone");
                    }
                }
                else
                {
                    foreach (var renderingGroup in groupedRenderings)
                    {
                        var newTab = new Tab
                        {
                            Header   = renderingGroup.Key,
                            CssClass = "scScrollbox scFixSize scFixSize4",
                            Height   = new Unit(100, UnitType.Percentage),
                            Width    = new Unit(100, UnitType.Percentage)
                        };
                        var newScrollbox = new Scrollbox
                        {
                            Class      = "scScrollbox scFixSize scFixSize4",
                            Background = "white",
                            Padding    = "0px",
                            Width      = new Unit(100, UnitType.Percentage),
                            Height     = new Unit(100, UnitType.Percentage),
                            InnerHtml  = RenderPreviews(renderingGroup)
                        };
                        newTab.Controls.Add(newScrollbox);
                        Tabs.Controls.Add(newTab);
                    }

                    gridPanel = Renderings.Parent as GridPanel;
                    if (gridPanel != null)
                    {
                        gridPanel.SetExtensibleProperty(Renderings, "class", "scDisplayNone");
                    }
                }
            }
            else
            {
                var gridPanel = Renderings.Parent as GridPanel;
                if (gridPanel != null)
                {
                    gridPanel.SetExtensibleProperty(Tabs, "class", "scDisplayNone");
                }
            }
            SetOpenPropertiesState(renderingOptions.SelectedItem);
        }
コード例 #5
0
        protected override void OnLoad(EventArgs e)
        {
            Assert.ArgumentNotNull((object)e, "e");
            base.OnLoad(e);
            if (Context.ClientPage.IsEvent)
            {
                return;
            }
            IsOpenPropertiesChecked = Registry.GetBool("/Current_User/SelectRendering/IsOpenPropertiesChecked");
            SelectRenderingOptions renderingOptions = SelectItemOptions.Parse <SelectRenderingOptions>();

            if (renderingOptions.ShowOpenProperties)
            {
                OpenPropertiesBorder.Visible = true;
                OpenProperties.Checked       = IsOpenPropertiesChecked;
            }
            if (renderingOptions.ShowPlaceholderName)
            {
                PlaceholderNameBorder.Visible = true;
                PlaceholderName.Value         = renderingOptions.PlaceholderName;
            }
            if (!renderingOptions.ShowTree)
            {
                TreeviewContainer.Class   = string.Empty;
                TreeviewContainer.Visible = false;
                TreeSplitter.Visible      = false;
                GridPanel gridPanel = TreeviewContainer.Parent as GridPanel;
                if (gridPanel != null)
                {
                    gridPanel.SetExtensibleProperty(TreeviewContainer, "class",
                                                    "scDisplayNone");
                }

                //Line of Code that does grouping
                var gruppedSublayouts = renderingOptions.Items.GroupBy(i => i.Parent.Name);

                //Add new tab for each folder
                foreach (IGrouping <string, Item> gruppedSublayout in gruppedSublayouts)
                {
                    var newTab = new Tab();
                    newTab.Header = gruppedSublayout.Key;
                    var newScrollbox = new Scrollbox();
                    newScrollbox.Class      = "scScrollbox scFixSize scFixSize4";
                    newScrollbox.Background = "white";
                    newScrollbox.Padding    = "0px";
                    newScrollbox.Width      = new Unit(100, UnitType.Percentage);
                    newScrollbox.Height     = new Unit(100, UnitType.Percentage);
                    newScrollbox.InnerHtml  = RenderPreviews(gruppedSublayout);
                    newTab.Controls.Add(newScrollbox);
                    Tabs.Controls.Add(newTab);
                }

                gridPanel = Renderings.Parent as GridPanel;
                if (gridPanel != null)
                {
                    gridPanel.SetExtensibleProperty(Renderings, "class",
                                                    "scDisplayNone");
                }
            }
            else
            {
                var gridPanel = Renderings.Parent as GridPanel;
                if (gridPanel != null)
                {
                    gridPanel.SetExtensibleProperty(Tabs, "class",
                                                    "scDisplayNone");
                }
            }
            //end of new code
            SetOpenPropertiesState(renderingOptions.SelectedItem);
        }
        /// <summary>
        /// Raises the load event.
        /// </summary>
        /// <param name="e">The <see cref="T:System.EventArgs"/> instance containing the event data.</param>
        protected override void OnLoad(EventArgs e)
        {
            Assert.ArgumentNotNull((object)e, "e");
            base.OnLoad(e);
            if (Context.ClientPage.IsEvent)
            {
                return;
            }
            this.IsOpenPropertiesChecked = Registry.GetBool("/Current_User/SelectRendering/IsOpenPropertiesChecked");
            SelectRenderingOptions renderingOptions = SelectItemOptions.Parse <SelectRenderingOptions>();

            if (renderingOptions.ShowOpenProperties)
            {
                this.OpenPropertiesBorder.Visible = true;
                this.OpenProperties.Checked       = this.IsOpenPropertiesChecked;
            }
            if (renderingOptions.ShowPlaceholderName)
            {
                this.PlaceholderNameBorder.Visible = true;
                this.PlaceholderName.Value         = renderingOptions.PlaceholderName;
            }
            if (!renderingOptions.ShowTree)
            {
                this.TreeviewContainer.Class   = string.Empty;
                this.TreeviewContainer.Visible = false;
                this.TreeSplitter.Visible      = false;
                GridPanel gridPanel = this.TreeviewContainer.Parent as GridPanel;
                if (gridPanel != null)
                {
                    gridPanel.SetExtensibleProperty((System.Web.UI.Control) this.TreeviewContainer, "class", "scDisplayNone");
                }
                this.Renderings.InnerHtml = this.RenderPreviews((IEnumerable <Item>)renderingOptions.Items);

                // Start custom code
                this.TabbedGridPanel.Visible  = true;
                this.DefaultGridPanel.Visible = false;
                var renderingGroups = renderingOptions.Items.GroupBy(i => i.Parent.Name);

                foreach (IGrouping <string, Item> rendering in renderingGroups)
                {
                    var newTab = new Tab();
                    newTab.Header = rendering.Key;
                    var newScrollbox = new Scrollbox();
                    newScrollbox.Class      = "scScrollbox scFixSize scFixSize4";
                    newScrollbox.Background = "white";
                    newScrollbox.Padding    = "0px";
                    newScrollbox.Width      = new Unit(100, UnitType.Percentage);
                    newScrollbox.Height     = new Unit(100, UnitType.Percentage);
                    newScrollbox.InnerHtml  = RenderPreviews(rendering);
                    newTab.Controls.Add(newScrollbox);
                    Tabs.Controls.Add(newTab);
                }
                gridPanel = Renderings.Parent as GridPanel;
                if (gridPanel != null)
                {
                    gridPanel.SetExtensibleProperty(Renderings, "class",
                                                    "scDisplayNone");
                }
                // End custom code
            }
            else
            {
                this.MainGridPanel.Controls.RemoveAt(0);
                this.DefaultGridPanel.Visible = true;
                this.TabbedGridPanel.Visible  = false;
            }
            this.SetOpenPropertiesState(renderingOptions.SelectedItem);
        }