Example #1
0
 public RadPageViewMenuDisplayingEventArgs(List <RadMenuItemBase> items,
                                           Rectangle alignRect,
                                           HorizontalPopupAlignment hAlign,
                                           VerticalPopupAlignment vAlign)
 {
     this.items     = items;
     this.hAlign    = hAlign;
     this.vAlign    = vAlign;
     this.alignRect = alignRect;
 }
Example #2
0
        private void DisplayItemListMenu(RadPageViewStripElement view)
        {
            RadPageViewElementBase   itemListButton = (RadPageViewElementBase)this.buttonsPanel.ItemListButton;
            HorizontalPopupAlignment hAlign         = this.RightToLeft ? HorizontalPopupAlignment.RightToRight : HorizontalPopupAlignment.LeftToLeft;
            VerticalPopupAlignment   vAlign         = VerticalPopupAlignment.TopToBottom;

            switch (view.StripAlignment)
            {
            case StripViewAlignment.Right:
                hAlign = HorizontalPopupAlignment.RightToLeft;
                vAlign = VerticalPopupAlignment.TopToTop;
                break;

            case StripViewAlignment.Left:
                hAlign = HorizontalPopupAlignment.LeftToRight;
                vAlign = VerticalPopupAlignment.TopToTop;
                break;
            }
            view.DisplayItemListMenu(itemListButton, hAlign, vAlign);
        }
Example #3
0
        /// <summary>
        /// Displays the item list menu, using the provided element as menu's owner and the specified horizontal and vertical alignment.
        /// </summary>
        /// <param name="menuOwner"></param>
        /// <param name="hAlign"></param>
        /// <param name="vAlign"></param>
        public void DisplayItemListMenu(RadPageViewElementBase menuOwner, HorizontalPopupAlignment hAlign, VerticalPopupAlignment vAlign)
        {
            if (this.ElementState != ElementState.Loaded)
            {
                return;
            }
            if (this.itemListMenu.DropDown.IsDisplayed)
            {
                this.itemListMenu.DropDown.ClosePopup(RadPopupCloseReason.CloseCalled);
            }

            List <RadMenuItemBase> menuItems = new List <RadMenuItemBase>();

            foreach (RadPageViewItem item in this.items)
            {
                if (item.Visibility == ElementVisibility.Collapsed)
                {
                    continue;
                }

                RadMenuItem menuItem = new RadMenuItem(item.Text);
                menuItem.Image  = item.Image;
                menuItem.Click += this.OnItemListMenuItem_Click;
                menuItem.Tag    = item;
                if (item == this.selectedItem)
                {
                    menuItem.IsChecked = true;
                }

                menuItems.Add(menuItem);
            }

            Rectangle alignRect = this.ElementTree.Control.RectangleToScreen(menuOwner.ControlBoundingRectangle);
            RadPageViewMenuDisplayingEventArgs e = new RadPageViewMenuDisplayingEventArgs(menuItems, alignRect, hAlign, vAlign);

            this.DisplayItemListMenu(e);
        }