示例#1
0
 public ContextMenuEventArgs(RadegastContextMenuStrip tab, ToolStripDropDownItem item, object target)
     : base()
 {
     Menu      = tab;
     MenuItem  = item;
     Selection = item;
 }
 private void Test_OnContentMenuClosing(object sender, RadegastContextMenuStrip.ContextMenuEventArgs e)
 {
     lock (_cogbotContextMenu)
     {
         WriteLine("You can no longer see the Menu: " + TheirInterest);
         TheirInterest = null;
     }
 }
示例#3
0
        /// <summary>
        /// Used by UI forms to set the Context target (saved in the toplevel strip if it's a RadegastContextMenuStrip)
        /// </summary>
        /// <param name="strip"></param>
        /// <param name="o"></param>
        public void SetCurrentItem(ToolStripDropDown strip, object o)
        {
            RadegastContextMenuStrip rmenu = strip as RadegastContextMenuStrip;

            if (rmenu != null)
            {
                rmenu.Selection = o;
            }
        }
示例#4
0
        public void ShowContextMenu()
        {
            RadegastContextMenuStrip menu = GetContextMenu();

            if (menu.HasSelection)
            {
                menu.Show(listFriends, listFriends.PointToClient(System.Windows.Forms.Control.MousePosition));
            }
        }
示例#5
0
        public void ShowContextMenu()
        {
            RadegastContextMenuStrip menu = GetContextMenu();

            if (menu.HasSelection)
            {
                menu.Show(listFriends, listFriends.PointToClient(MousePosition));
            }
        }
 private void Test_OnContentMenuItemClicked(object sender, RadegastContextMenuStrip.ContextMenuEventArgs e)
 {
     if (e.MenuItem==null) return;
     WriteLine("I hope you meant to " + e.MenuItem.Text + "  " + e.Selection + "!");
     if (!e.MenuItem.Enabled)
     {
         WriteLine("If not do not worry it was not enabled ");
     }
 }
示例#7
0
        private void rtbChat_MouseUp(object sender, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Right)
            {
                return;
            }
            RadegastContextMenuStrip cms = new RadegastContextMenuStrip();

            instance.ContextActionManager.AddContributions(cms, instance.Client);
            cms.Show((Control)sender, new Point(e.X, e.Y));
        }
 private void Test_OnContentMenuOpened(object sender, RadegastContextMenuStrip.ContextMenuEventArgs e)
 {
     lock (_cogbotContextMenu)
     {
         TheirInterest = e.Menu;
         WriteLine("You are looking at Menu: " + TheirInterest);
         WriteLine("The Item you are going to do something to is: " + e.Selection);
         foreach (var item in e.Menu.AllChoices())
             if (item.Enabled)
                 WriteLine(" You can: " + item.Text);
             else
                 WriteLine(" cannot: " + item.Text);
     }
 }
 private void Test_OnContentMenuItemSelected(object sender, RadegastContextMenuStrip.ContextMenuEventArgs e)
 {
     lock (_cogbotContextMenu)
     {
         if (e.MenuItem == null)
         {
             WriteLine("The last menu selection is not hightlighted by the mouse anymore so do not click");
         }
         else if (!e.MenuItem.Enabled)
         {
             WriteLine("You cannot " + e.MenuItem.Text + " at this time to " + e.Selection);
         }
         else
         {
             WriteLine("You can " + e.MenuItem.Text + " " + e.Selection + " if you press enter or click");
         }
     }
 }
示例#10
0
        public RadegastContextMenuStrip GetContextMenu()
        {
            RadegastContextMenuStrip friendsContextMenuStrip = new RadegastContextMenuStrip();

            if (listFriends.SelectedItems.Count == 1)
            {
                FriendInfo item = (FriendInfo)listFriends.SelectedItems[0];
                instance.ContextActionManager.AddContributions(friendsContextMenuStrip, typeof(Avatar), item, btnPay.Parent);
                friendsContextMenuStrip.Selection    = item.Name;
                friendsContextMenuStrip.HasSelection = true;
            }
            else if (listFriends.SelectedItems.Count > 1)
            {
                instance.ContextActionManager.AddContributions(friendsContextMenuStrip, typeof(ListView), listFriends, btnPay.Parent);
                friendsContextMenuStrip.Selection    = "Multiple friends";
                friendsContextMenuStrip.HasSelection = true;
            }
            else
            {
                friendsContextMenuStrip.Selection    = null;
                friendsContextMenuStrip.HasSelection = false;
            }
            return(friendsContextMenuStrip);
        }
示例#11
0
        /// <summary>
        /// Announce the opening of a context menu
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnContentMenuOpened(object sender, RadegastContextMenuStrip.ContextMenuEventArgs e)
        {
            lock (e.Menu)
            {
                menuStrip = e.Menu;
                menuFor = string.Empty;
                id = OpenMetaverse.UUID.Zero;

                // Figure out what this menu applies to.
                if (menuStrip.Selection is string)
                {
                    menuFor = (string)menuStrip.Selection;
                }
                else if (menuStrip.Selection is ListViewItem)
                {
                    ListViewItem lv = menuStrip.Selection as ListViewItem;
                    menuFor = lv.Text;
                }
                else if (menuStrip.Selection is OpenMetaverse.InventoryItem)
                {
                    // Something in Inventory.
                    menuFor = ((OpenMetaverse.InventoryItem)(menuStrip.Selection)).Name;
                }
                else if (menuStrip.Selection is OpenMetaverse.FriendInfo)
                {
                    // A Friend.
                    OpenMetaverse.FriendInfo f = menuStrip.Selection as OpenMetaverse.FriendInfo;
                    menuFor = f.Name;
                }
                else if (menuStrip.Selection is OpenMetaverse.Primitive)
                {
                    // Something in the Objects list.
                    OpenMetaverse.Primitive p = menuStrip.Selection as OpenMetaverse.Primitive;
                    if (p.Properties != null)
                        menuFor = p.Properties.Name;
                    else
                        menuFor = "Loading object";
                }

                // Remove parenthesized distance, etc
                int lParen = menuFor.IndexOf('(');
                if (lParen > 0)
                    menuFor = menuFor.Substring(0, lParen);

                // Stop reading old choices if moving fast.
                control.talker.Flush();
                control.talker.SayMore(menuFor + " menu.", Talk.BeepType.Open);
            }
        }
示例#12
0
        /// <summary>
        /// Right-clicks on participants beings up Mute, etc menu
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void participants_MouseUp(object sender, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Right) return;

            RadegastContextMenuStrip cms = new RadegastContextMenuStrip();
            instance.ContextActionManager.AddContributions(cms, instance.Client);
            cms.Show((Control)sender, new Point(e.X, e.Y));
        }
示例#13
0
 /// <summary>
 /// Open context menu for voice items
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void RadegastContextMenuStrip_OnContentMenuOpened(object sender, RadegastContextMenuStrip.ContextMenuEventArgs e)
 {
     lock (e.Menu)
     {
         // Figure out what this menu applies to.
         if (e.Menu.Selection is ListViewItem)
         {
             ListViewItem item = e.Menu.Selection as ListViewItem;
             if (item.Tag is VoiceParticipant)
             {
                 selected = item.Tag as VoiceParticipant;
                 ToolStripButton muteButton;
                 if (selected.IsMuted)
                     muteButton = new ToolStripButton("Unmute", null, new EventHandler(OnUnMuteClick));
                 else
                     muteButton = new ToolStripButton("Mute", null, new EventHandler(OnMuteClick));
                 e.Menu.Items.Add(muteButton);
             }
         }
     }
 }
示例#14
0
 internal void Start()
 {
     menuStrip = null;
 }
示例#15
0
 internal void Stop()
 {
     menuStrip = null;
 }
示例#16
0
 /// <summary>
 /// Announce closing of a context menu.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void OnContentMenuClosing(object sender, RadegastContextMenuStrip.ContextMenuEventArgs e)
 {
     lock (e.Menu)
     {
         control.talker.SayMore("Menu closed.", Talk.BeepType.Close);
         menuStrip = null;
     }
 }
示例#17
0
        private void OnContentMenuItemSelected(object sender, RadegastContextMenuStrip.ContextMenuEventArgs e)
        {
            lock (e.Menu)
            {
                if (e.MenuItem == null) return;

                if (e.MenuItem.Enabled)
                {
                    control.talker.SayMore(e.MenuItem.Text);
                }
                else
                {
                    control.talker.SayMore("Disabled " + e.MenuItem.Text);
                }
            }
        }
示例#18
0
 public ContextMenuEventArgs(RadegastContextMenuStrip tab, ToolStripDropDownItem item, object target)
     : base()
 {
     Menu = tab;
     MenuItem = item;
     Selection = item;
 }
示例#19
0
 public RadegastContextMenuStrip GetContextMenu()
 {
     RadegastContextMenuStrip friendsContextMenuStrip = new RadegastContextMenuStrip();
     if (listFriends.SelectedItems.Count == 1)
     {
         FriendInfo item = (FriendInfo)listFriends.SelectedItems[0];
         instance.ContextActionManager.AddContributions(friendsContextMenuStrip, typeof(Avatar), item, btnPay.Parent);
         friendsContextMenuStrip.Selection = item.Name;
         friendsContextMenuStrip.HasSelection = true;
     }
     else if (listFriends.SelectedItems.Count > 1)
     {
         instance.ContextActionManager.AddContributions(friendsContextMenuStrip, typeof(ListView), listFriends, btnPay.Parent);
         friendsContextMenuStrip.Selection = "Multiple friends";
         friendsContextMenuStrip.HasSelection = true;
     }
     else
     {
         friendsContextMenuStrip.Selection = null;
         friendsContextMenuStrip.HasSelection = false;
     }
     return friendsContextMenuStrip;
 }
示例#20
0
        private void OnContentMenuItemClicked(object sender, RadegastContextMenuStrip.ContextMenuEventArgs e)
        {
            if (!e.MenuItem.Enabled)
            {
                control.talker.SayMore(e.MenuItem.Text + " is disabled.", Talk.BeepType.Bad);
                return;
            }

            control.talker.Flush();
            control.talker.SayMore("Doing " + e.MenuItem.Text, Talk.BeepType.Good );
        }