示例#1
0
        public TextRollupContextMenu() :
            base()
        {
            ObjectMenuItem objectMenu;

            var index = -1;

            for (var i = 0; i < this.MenuItems.Count && index == -1; i++)
            {
                objectMenu = MenuItems[i] as ObjectMenuItem;
                if (objectMenu != null && objectMenu.Id == ObjectContextMenu.Separator4Id)
                {
                    index = i;
                }
            }

            if (index == -1)
            {
                index = this.MenuItems.Count;
            }

            objectMenu        = new ObjectMenuItem(_mySep, Tools.SeparatorMenuItem);
            objectMenu.Click += new EventHandler(menuItem_Click);
            MenuItems.Add(index++, objectMenu);

            objectMenu        = new ObjectMenuItem(ExpandedId, StringManager.GetString(StringManager.Id.ExpandedContextMenu));
            objectMenu.Click += new EventHandler(menuItem_Click);
            MenuItems.Add(index++, objectMenu);
        }
示例#2
0
 internal static void EnableMenuItem(ObjectMenuItem item, bool value, bool updateVisilibity)
 {
     if (item != null)
     {
         item.Enabled = value;
         if (updateVisilibity)
         {
             item.Visible = value;
         }
     }
 }
示例#3
0
        // Gets the menu item associated with this id
        internal ObjectMenuItem GetMenuItem(int id)
        {
            foreach (MenuItem item in MenuItems)
            {
                ObjectMenuItem objectMenu = item as ObjectMenuItem;
                if (objectMenu != null && objectMenu.Id == id)
                {
                    return(objectMenu);
                }
            }

            return(null);
        }
示例#4
0
        public ObjectContextMenu()
        {
            // Add Cut/Copy and delete menu items
            this.MenuItems.Add(new ObjectMenuItem(CutId, StringManager.GetString(StringManager.Id.CutContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(CopyId, StringManager.GetString(StringManager.Id.CopyContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(DeleteId, StringManager.GetString(StringManager.Id.DeleteContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(Separator1Id, Tools.SeparatorMenuItem));

            // add Z-order menu items(BringToFront, SendToBack, BringToFirst, SendToLast)
            this.MenuItems.Add(new ObjectMenuItem(BringToFrontId, StringManager.GetString(StringManager.Id.BringToFrontContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(SendToBackId, StringManager.GetString(StringManager.Id.SendToBackContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(BringToFirstId, StringManager.GetString(StringManager.Id.BringToFirstContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(SendToLastId, StringManager.GetString(StringManager.Id.SendToLastContextMenu)));

            // add Objects Alignmen menu items
            ObjectMenuItem ObjectsAlignmenMenuItem = new ObjectMenuItem(ObjectsAlignmentId, StringManager.GetString(StringManager.Id.ObjectsAlignmentContextMenu));

            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(ObjectsAlignmentLeftsId, StringManager.GetString(StringManager.Id.ObjectsAlignmentLeftsContextMenu)));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(ObjectsAlignmentCentersId, StringManager.GetString(StringManager.Id.ObjectsAlignmentCentersContextMenu)));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(ObjectsAlignmentRightsId, StringManager.GetString(StringManager.Id.ObjectsAlignmentRightsContextMenu)));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(Separator7Id, Tools.SeparatorMenuItem));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(ObjectsAlignmentTopsId, StringManager.GetString(StringManager.Id.ObjectsAlignmentTopsContextMenu)));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(ObjectsAlignmentMiddlesId, StringManager.GetString(StringManager.Id.ObjectsAlignmentMiddlesContextMenu)));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(ObjectsAlignmentBottomsId, StringManager.GetString(StringManager.Id.ObjectsAlignmentBottomsContextMenu)));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(Separator8Id, Tools.SeparatorMenuItem));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(ObjectsAlignmentSameWidthId, StringManager.GetString(StringManager.Id.ObjectsAlignmentSameWidthContextMenu)));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(ObjectsAlignmentSameHeightId, StringManager.GetString(StringManager.Id.ObjectsAlignmentSameHeightContextMenu)));
            ObjectsAlignmenMenuItem.MenuItems.Add(new ObjectMenuItem(ObjectsAlignmentSameSizeId, StringManager.GetString(StringManager.Id.ObjectsAlignmentSameSizeContextMenu)));
            this.MenuItems.Add(ObjectsAlignmenMenuItem);
            this.MenuItems.Add(new ObjectMenuItem(Separator2Id, Tools.SeparatorMenuItem));

            // Add flip and reverse menu items
            this.MenuItems.Add(new ObjectMenuItem(FlipId, StringManager.GetString(StringManager.Id.FlipContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(ReverseId, StringManager.GetString(StringManager.Id.ReverseContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(Separator3Id, Tools.SeparatorMenuItem));

            // Add lock and unlock menu items
            this.MenuItems.Add(new ObjectMenuItem(LockId, StringManager.GetString(StringManager.Id.LockContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(UnlockId, StringManager.GetString(StringManager.Id.UnlockContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(Separator4Id, Tools.SeparatorMenuItem));

            // Add reset rotate points menu item
            this.MenuItems.Add(new ObjectMenuItem(ResetRotatePointsId, StringManager.GetString(StringManager.Id.ResetRotatePointsContextMenu)));
            this.MenuItems.Add(new ObjectMenuItem(Separator5Id, Tools.SeparatorMenuItem));

            // Add properties menu item
            this.MenuItems.Add(new ObjectMenuItem(PropertiesId, StringManager.GetString(StringManager.Id.PropertiesContextMenu)));

            // Add click event handler to each menu item except the seperators
            foreach (MenuItem item in MenuItems)
            {
                if (string.Compare(item.Text, Tools.SeparatorMenuItem) != 0)
                {
                    item.Click += new EventHandler(menuItem_Click);
                }
            }

            foreach (MenuItem item in ObjectsAlignmenMenuItem.MenuItems)
            {
                if (string.Compare(item.Text, Tools.SeparatorMenuItem) != 0)
                {
                    item.Click += new EventHandler(menuItem_Click);
                }
            }
        }
示例#5
0
        // Perform action depndeing on which menu item has been clicked.
        private void menuItem_Click(object sender, EventArgs e)
        {
            ObjectMenuItem objectMenu = sender as ObjectMenuItem;

            if (objectMenu == null)
            {
                return;
            }

            var automation = this.Automation;

            if (automation == null)
            {
                return;
            }

            switch (objectMenu.Id)
            {
            case CutId:
                automation.Copy();
                automation.DeleteSelectedObjects();
                break;

            case CopyId: automation.Copy(); break;

            case DeleteId: automation.DeleteSelectedObjects(); break;

            case BringToFrontId: automation.BringToFront(false); break;

            case SendToBackId: automation.SendToBack(false); break;

            case BringToFirstId: automation.BringToFront(true); break;

            case SendToLastId: automation.SendToBack(true); break;

            case FlipId: automation.Flip(false); break;

            case ReverseId: automation.Flip(true); break;

            case LockId: automation.Lock(); break;

            case UnlockId: automation.Unlock(); break;

            case ResetRotatePointsId: automation.ResetRotatePoints(); break;

            case PropertiesId: automation.ShowObjectProperties(); break;

            case ObjectsAlignmentLeftsId: automation.AlignLefts(); break;

            case ObjectsAlignmentCentersId: automation.AlignCenters(); break;

            case ObjectsAlignmentRightsId: automation.AlignRights(); break;

            case ObjectsAlignmentTopsId: automation.AlignTops(); break;

            case ObjectsAlignmentMiddlesId: automation.AlignMiddles(); break;

            case ObjectsAlignmentBottomsId: automation.AlignBottoms(); break;

            case ObjectsAlignmentSameWidthId: automation.MakeSameWidth(); break;

            case ObjectsAlignmentSameHeightId: automation.MakeSameHeight(); break;

            case ObjectsAlignmentSameSizeId: automation.MakeSameSize(); break;

            default:
                break;
            }
        }