///<summary>
        ///</summary>
        public VIENNAAddIn()
        {
            menuManager = new MenuManager
            {
                DefaultMenuItems = new[] { AddInSettings.AddInName },
                DefaultEnabled   = IfRepositoryIsUmm2Model,
                DefaultChecked   = Never
            };

            MenuAction createUPCCStructure =
                "&Create initial UPCC3 model structure".OnClick(UpccModelCreator.ShowForm);
            MenuAction createABIE = "Create new &ABIE".OnClick(AbieEditor.ShowCreateDialog);
            MenuAction createBDT  = "Create new BD&T".OnClick(BdtEditor.ShowCreateDialog);
            MenuItem   modifyAbie = "&Modify ABIE".OnClick(AbieEditor.ShowUpdateDialog).Enabled(IfABIEIsSelected);
            MenuAction validate   = "&Validate".OnClick(ValidatorForm.ShowValidator);
            MenuItem   _____      = MenuItem.Separator;

            menuManager.AddMenu(MenuLocation.MainMenu
                                + (AddInSettings.AddInName
                                   + "&Set Model as UMM2/UPCC3 Model"
                                   .OnClick(ToggleUmm2ModelState)
                                   .Checked(IfRepositoryIsUmm2Model)
                                   .Enabled(Always)
                                   + createUPCCStructure
                                   + "&Create initial UMM 2 model structure".OnClick(UmmInitialPackageStructureCreator.ShowForm)
                                   + _____
                                   + "&Validate All - UPCC3".OnClick(ValidatorForm.ShowUpccValidator)
                                   + "&Validate All - UMM2".OnClick(ValidatorForm.ShowUmmValidator)
                                   + _____
                                   + ("Maintenance"
                                      + "Synchronize &Tagged Values...".OnClick(SynchStereoTypes.ShowForm)
                                      // TODO: revert this to reenable UML Class Customizer
                                      //+ "Set Stereo Types...".OnClick(StereoTypeTransformer.ShowForm)
                                      )
                                   + ("Wizards"
                                      + createABIE
                                      + modifyAbie
                                      + createBDT
                                      // TODO: revert this to reenable UML Class Customizer
                                      //+ "&Uml Class Customizer".OnClick(UmlClassCustomizer.ShowCreateDialog)
                                      //+ "Generate &XML Schema (old)".OnClick(GeneratorWizardForm.ShowGeneratorWizard)
                                      + "&Generate XML Schema".OnClick(ExporterForm.ShowForm)
                                      + "&Import XML Schemas".OnClick(XsdImporterForm.ShowForm)
                                      + "&XSLT Generator".OnClick(XsltGeneratorForm.ShowForm)
                                      //+ "Import XML Schemas (old)".OnClick(ImporterWizardFormOld.ShowImporterWizard)
                                      + _____
                                      + "&Transformer Wizard".OnClick(TransformerWizard.ShowForm)
                                      + "&Sub&setting Wizard".OnClick(SubSettingWizard.ShowForm)
                                      + "&Schema Anal&yzer".OnClick(SchemaAnalyzer.ShowForm)
                                      + "&WSDL Generator".OnClick(WSDLGenerator.ShowForm)
                                      )
                                   + "&Options".OnClick(OptionsForm.ShowForm)
                                   + ("&About " + AddInSettings.AddInName).OnClick(AboutWindow.ShowForm)));
            menuManager.AddMenu((MenuLocation.TreeView | MenuLocation.Diagram)
                                + (AddInSettings.AddInName
                                   + validate
                                   //                       + "Import Standard CC Libraries".OnClick(StandardLibraryImporterForm.ShowForm)))
                                   //    .ShowIf(context => context.SelectedItemIsLibraryOfType(Stereotype.bLibrary));
                                   //menuManager.AddMenu((MenuLocation.TreeView | MenuLocation.Diagram)
                                   //                    + (AddInSettings.AddInName
                                   //                       + validate
                                   + "Import Standard CC Libraries".OnClick(StandardLibraryImporter.ShowForm)))
            .ShowIf(context => context.SelectedItemIsLibraryOfType(Stereotype.bLibrary));
            menuManager.AddMenu((MenuLocation.TreeView | MenuLocation.Diagram)
                                + (AddInSettings.AddInName
                                   + createABIE
                                   + validate))
            .ShowIf(context => context.SelectedItemIsLibraryOfType(Stereotype.BIELibrary));
            menuManager.AddMenu((MenuLocation.TreeView | MenuLocation.Diagram)
                                + (AddInSettings.AddInName
                                   + modifyAbie))
            .ShowIf(context => context.SelectedItemIsABIE());
            menuManager.AddMenu((MenuLocation.TreeView | MenuLocation.Diagram)
                                + (AddInSettings.AddInName
                                   + createBDT
                                   + validate))
            .ShowIf(context => context.SelectedItemIsLibraryOfType(Stereotype.BDTLibrary));
            menuManager.AddMenu((MenuLocation.TreeView | MenuLocation.Diagram)
                                + (AddInSettings.AddInName
                                   + createUPCCStructure))
            .ShowIf(context => context.SelectedItemIsRootModel());
            menuManager.AddMenu((MenuLocation.TreeView | MenuLocation.Diagram)
                                + (AddInSettings.AddInName
                                   + validate));
        }
Exemple #2
0
 private static bool ContextIsBDTLibrary(AddInContext context)
 {
     return(context.MenuLocation.IsContextMenu() && context.SelectedItemIsLibraryOfType(Stereotype.BDTLibrary));
 }