Example #1
0
        private void OnContextMenuStripOpening(object sender, CancelEventArgs e)
        {
            if (_tileController == null || _tileController.ContextMenuProvider == null)
            {
                e.Cancel = true;
                return;
            }

            if (_tileController.ContextMenuEnabled)
            {
                ActionModelNode menuModel = _tileController.ContextMenuProvider.GetContextMenuModel(_tileController);
                if (menuModel != null && menuModel.ChildNodes.Count > 0)
                {
                    ToolStripBuilder.Clear(_contextMenuStrip.Items);
                    ToolStripBuilder.BuildMenu(_contextMenuStrip.Items, menuModel.ChildNodes);

                    // filter unavailable items out of list since they wreck the display of the overflow and scroll portions of the menu dropdown
                    // (ClearCanvas Ticket #4775, Microsoft Connect Issue #136061)
                    FilterUnavailableItems(_contextMenuStrip.Items);

                    // cancel list if, after filtering, no items are left to display.
                    e.Cancel = (_contextMenuStrip.Items.Count == 0);
                }
                else
                {
                    e.Cancel = true;
                }
            }
            else
            {
                e.Cancel = true;
            }
        }
Example #2
0
 private void InitializeMenu()
 {
     ToolStripBuilder.Clear(_contextMenu.Items);
     if (_menuModel != null)
     {
         ToolStripBuilder.BuildMenu(_contextMenu.Items, _menuModel.ChildNodes);
     }
 }
Example #3
0
 private static void ShowContextMenu(ContextMenuStrip contextMenuStrip, ActionModelNode actionModel, Point screenPoint, int minWidth, bool alignRight)
 {
     ToolStripBuilder.Clear(contextMenuStrip.Items);
     if (actionModel != null)
     {
         ToolStripBuilder.BuildMenu(contextMenuStrip.Items, actionModel.ChildNodes);
         if (alignRight)
         {
             screenPoint.Offset(-contextMenuStrip.Width, 0);
         }
         contextMenuStrip.Show(screenPoint);
     }
 }
        public LocalImageExplorerControl(LocalImageExplorerComponent component)
        {
            _component = component;

            _folderViewSelectionUpdatePublisher = new DelayedEventPublisher(OnFolderViewSelectionUpdatePublished);

            InitializeComponent();
            InitializeHistoryMenu();
            InitializeIcons();
            InitializeFocusList();

            SetViewMode(Settings.Default.FolderViewMode, false);
            SetHomeLocation(Settings.Default.HomeLocation);

            _folderView.ExceptionRaised += OnFolderControlExceptionRaised;
            _folderTree.ExceptionRaised += OnFolderControlExceptionRaised;

            ResetFocus();             // reset focus must happen after explorer controls are initially populated

            // Initialize menus here
            ToolStripBuilder.BuildMenu(_folderViewContextMenu.Items, _component.ContextMenuModel.ChildNodes);
            ToolStripBuilder.BuildMenu(_folderTreeContextMenu.Items, _component.ContextMenuModel.ChildNodes);
        }