예제 #1
0
 private void UpdateContextMenu(MenuItem parentMenuItem, PartModel model)
 {
     foreach (var command in model.ShellCommands)
     {
         var menuItem = new ShellCommandMenuItem(new ShellCommandMenuModel(command, model.Part, Data.OpenWith), IconManager);
         parentMenuItem.Items.Add(menuItem);
     }
 }
예제 #2
0
파일: Data.cs 프로젝트: Dadstart/MOPE2
 private void InitializePartModels()
 {
     PartModels = new Dictionary <string, PartModel>(Package.Parts.Count);
     foreach (Part part in Package.Parts.Values)
     {
         var shellCommands = OpenWith.GetCommandsForPart(part);
         var model         = new PartModel(part, shellCommands);
         PartModels.Add(part.Uri.Replace('\\', '/'), model);
     }
 }
예제 #3
0
        private void SetActivePart(PartModel model)
        {
            if (model == null)
            {
                return;
            }

            var part    = model.Part;
            var tabItem = GetTabItemWithPart(part);

            if (tabItem == null)
            {
                if (part.CanViewInBrowser())
                {
                    var webItem = new EditorWebViewTabItem(Data, WebViewHost, model);
                    partsTabControl.Items.Add(webItem);
                    partsTabControl.SelectedItem = webItem;
                }
                else
                {
                    var binaryItem = new BinaryViewTabItem(Data, model);
                    partsTabControl.Items.Add(binaryItem);
                    partsTabControl.SelectedItem = binaryItem;
                }
            }

            // remove existing OpenWithMenu
            if (listViewParts.ContextMenu.Items[0] is OpenWithMenuItem)
            {
                listViewParts.ContextMenu.Items.RemoveAt(0);
            }

            var openWithMenuItem = new OpenWithMenuItem(model.Part);

            listViewParts.ContextMenu.Items.Insert(0, openWithMenuItem);
            UpdateContextMenu(openWithMenuItem, model);
        }
예제 #4
0
 public PackageItem(string name, string fullName, PartModel model)
 {
     Name     = name;
     FullName = fullName;
     Model    = model;
 }