Пример #1
0
        public override void Execute(object parameter)
        {
            Model.Project separateVersion = Current.Project.VersionManager.SeparateVersion(Current.ProjectVersion, true);
            Project.guiSaveAsProjectCommand guiSaveAsProjectCommand = new guiSaveAsProjectCommand();

            guiSaveAsProjectCommand.SavedProject = separateVersion;
            guiSaveAsProjectCommand.Execute();
        }
Пример #2
0
        public static void Init(IMainWindow mainWindow)
        {
            #region project
            NewProjectCommand       = new guiNewProjectCommand();
            OpenProjectCommand      = new guiOpenProjectCommand();
            CloseApplicationCommand = new guiCloseAppCommand();
            CloseProjectCommand     = new guiCloseProjectCommand();
            SaveProjectCommand      = new guiSaveProjectCommand();
            SaveAsProjectCommand    = new guiSaveAsProjectCommand();
            XSDtoPSM = new guiXSDtoPSM();
#if SILVERLIGHT
            OpenWebProjectCommand = new guiOpenWebProjectCommand();
#endif
            UndoCommand = new guiUndoCommand();
            RedoCommand = new guiRedoCommand();
            Delete      = new guiDelete();
            HelpCommand = new guiShowHelpCommand();
            //RenameProjectCommand = new guiControllerCommand
            //                           {
            //                               ControllerCommandFactoryMethod = CommandFactory<cmdRenameProject>.Factory,
            //                               ControllerCommandType = typeof(cmdRenameProject),
            //                               NoScope = true,
            //                               OpenDialog = true,
            //                               Icon = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.pencil)
            //                           };
            RenamePSMSchemaCommand = new guiControllerCommand
            {
                ControllerCommandFactoryMethod = CommandFactory <cmdRenamePSMSchema> .Factory,
                ControllerCommandType          = typeof(cmdRenamePSMSchema),
                ScopeObjectConvertor           = guiControllerCommandScopeConvertors.DiagramToSchema,
                OpenDialog = true,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.pencil)
            };
            RemovePSMSchemaCommand = new guiControllerCommand
            {
                ControllerCommandFactoryMethod = CommandFactory <Controller.Commands.Complex.PSM.cmdDeletePSMSchema> .Factory,
                ControllerCommandType          = typeof(Controller.Commands.Complex.PSM.cmdDeletePSMSchema),
                ScopeObjectConvertor           = guiControllerCommandScopeConvertors.DiagramToSchema,
                OpenDialog = false,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.delete2)
            };

            RenameComponentCommand = new guiControllerCommand
            {
                Text = "Rename...",
                Icon = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.note_edit),
                ControllerCommandFactoryMethod = CommandFactory <cmdRenameComponent> .Factory,
                ControllerCommandType          = typeof(cmdRenameComponent),
                Gesture    = KeyGestures.F2,
                OpenDialog = true,
                AcceptedSelectedComponentType = typeof(Component),
                ScopeIsSelectedComponent      = true
            };

            NewPSMSchema = new guiControllerCommand
            {
                Text    = "New PSM schema",
                Icon    = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.GenericDocument),
                NoScope = true,
                ControllerCommandFactoryMethod = CommandFactory <cmdNewPSMSchema> .Factory,
                ControllerCommandType          = typeof(cmdNewPSMSchema)
            };

            OpenAttributeTypesDialog = new guiOpenAttributeTypesDialogCommand();

            #endregion

            #region grammar

            NormalizeSchemaCommandCommand   = new guiNormalizeSchemaCommand();
            TestNormalizationCommand        = new guiTestNormalizationCommand();
            GenerateGrammarCommand          = new guiGenerateGrammarCommand();
            GenerateXsdCommand              = new guiGenerateXsdCommand();
            GenerateSchematronSchemaCommand = new guiGenerateSchematronSchemaCommand();
            CreateSampleDocumentCommand     = new guiSampleDocumentCommand();
            SuggestConstraintsCommand       = new guiSuggestConstraintsCommand();
            GenerateRngCommand              = new guiGenerateRngCommand();

            #endregion

            #region versioning

            BranchCurrentVersionCommand = new guiBranchCurrentVersion();
            SaveAsSingleVersionCommand  = new guiSaveAsSingleVersion();
            RemoveCurrentVersionCommand = new guiRemoveCurrentVersion();
            #if SILVERLIGHT
            #else
            FindChangesCommand              = new guiFindChanges();
            CreateVersionLinkCommand        = new guiCreateVersionLink();
            RemoveVersionLinkCommand        = new guiRemoveVersionLink();
            AdaptationCommand               = new guiAdaptationCommand();
            VisualizeLinksCommand           = new guiVisualizeLinks();
            RemoveVersionLinkBetweenSchemas = new guiRemoveVersionLinkBetweenSchemas();
            CreateVersionLinkBetweenSchemas = new guiCreateVersionLinkBetweenSchemas();
            #endif

            #endregion

            #region PIM

            AddPIMClassCommand = new guiControllerCommand
            {
                Text = "Add class",
                ControllerCommandFactoryMethod = CommandFactory <cmdCreateNewPIMClass> .Factory,
                ControllerCommandType          = typeof(cmdCreateNewPIMClass),
                NoScope = true,
                PIMOnly = true,
                Icon    = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.@class)
            };

            AddPIMAttributeCommand = new guiControllerCommand
            {
                Text = "Add attribute",
                ControllerCommandFactoryMethod = CommandFactory <cmdNewPIMAttribute> .Factory,
                ControllerCommandType          = typeof(cmdNewPIMAttribute),
                AcceptedSelectedComponentType  = typeof(PIMClass),
                ScopeIsSelectedComponent       = true,
                PIMOnly = true,
                Icon    = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.AddAttributes)
            };

            AddPIMAssociationCommand = new guiControllerCommand
            {
                Text = "Add association",
                ControllerCommandFactoryMethod = CommandFactory <cmdNewPIMAssociation> .Factory,
                ControllerCommandType          = typeof(cmdNewPIMAssociation),
                NoScope    = true,
                PIMOnly    = true,
                OpenDialog = true,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.assocclass)
            };
            AddPIMGeneralizationCommand = new guiControllerCommand
            {
                Text = "Add generalization",
                ControllerCommandFactoryMethod = CommandFactory <cmdNewPIMGeneralization> .Factory,
                ControllerCommandType          = typeof(cmdNewPIMGeneralization),
                NoScope    = true,
                PIMOnly    = true,
                OpenDialog = true,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.gen)
            };
            SplitPIMAttributeCommand   = new guiSplitPIMAttribute();
            SplitPIMAssociationCommand = new guiSplitPIMAssociation();
            SplitPIMAttribute3Command  = new guiSplitPIMAttribute()
            {
                Count = 3
            };
            SplitPIMAssociation3Command = new guiSplitPIMAssociation()
            {
                Count = 3
            };
            SplitPIMAttribute4Command = new guiSplitPIMAttribute()
            {
                Count = 4
            };
            SplitPIMAssociation4Command = new guiSplitPIMAssociation()
            {
                Count = 4
            };
            SplitPIMAttributeMoreCommand = new guiControllerCommand
            {
                Text = "More...",
                ControllerCommandFactoryMethod = CommandFactory <Controller.Commands.Complex.PIM.cmdSplitPIMAttribute> .Factory,
                ControllerCommandType          = typeof(Controller.Commands.Complex.PIM.cmdSplitPIMAttribute),
                PIMOnly    = true,
                OpenDialog = true,
                ScopeIsSelectedComponent      = true,
                AcceptedSelectedComponentType = typeof(PIMAttribute),
                Icon = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.AddAttributes)
            };
            SplitPIMAssociationMoreCommand = new guiControllerCommand
            {
                Text = "More...",
                ControllerCommandFactoryMethod = CommandFactory <Controller.Commands.Complex.PIM.cmdSplitPIMAssociation> .Factory,
                ControllerCommandType          = typeof(Controller.Commands.Complex.PIM.cmdSplitPIMAssociation),
                PIMOnly    = true,
                OpenDialog = true,
                ScopeIsSelectedComponent      = true,
                AcceptedSelectedComponentType = typeof(PIMAssociation),
                Icon = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.split_pim_assoc)
            };
            DerivePSMRootCommand = new guiControllerCommand
            {
                Text = "Derive new PSM root",
                ControllerCommandFactoryMethod = CommandFactory <Controller.Commands.Complex.PIM.cmdDerivePSMRoot> .Factory,
                ControllerCommandType          = typeof(Controller.Commands.Complex.PIM.cmdDerivePSMRoot),
                PIMOnly = true,
                ScopeIsSelectedComponent      = true,
                AcceptedSelectedComponentType = typeof(PIMClass),
                Icon = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.XmlSchema)
            };
            PIMShiftUp = new guiShiftPIMAttributeCommand()
            {
                Up = true
            };
            PIMShiftDown = new guiShiftPIMAttributeCommand()
            {
                Up = false
            };
            Associate2              = new guiAssociate2();
            PIMDelete               = new guiPIMDelete();
            PIMDeleteAssociation    = new guiPIMDeleteAssociation();
            PIMDeleteAttribute      = new guiPIMDeleteAttribute();
            PIMDeleteClass          = new guiPIMDeleteClass();
            PIMDeleteGeneralization = new guiPIMDeleteGeneralization();
            #endregion

            #region PSM

            AddPSMSchemaCommand = new guiControllerCommand
            {
                ControllerCommandFactoryMethod = CommandFactory <cmdNewPSMSchema> .Factory,
                ControllerCommandType          = typeof(cmdNewPSMSchema),
                NoScope = true
            };

            AddPSMClassCommand = new guiControllerCommand
            {
                Text = "Add class",
                ControllerCommandFactoryMethod = CommandFactory <cmdNewPSMClass> .Factory,
                ControllerCommandType          = typeof(cmdNewPSMClass),
                NoScope = true,
                PSMOnly = true,
                Icon    = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.@class)
            };

            AddPSMContentModel = new guiControllerCommand
            {
                Text = "Add content model",
                ControllerCommandFactoryMethod = CommandFactory <cmdNewPSMContentModel> .Factory,
                ControllerCommandType          = typeof(cmdNewPSMContentModel),
                NoScope = true,
                PSMOnly = true,
                Icon    = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.ContentChoice)
            };


            AddPSMAttributeCommand = new guiControllerCommand
            {
                Text = "Add attribute",
                ControllerCommandFactoryMethod = CommandFactory <Exolutio.Controller.Commands.Atomic.PSM.MacroWrappers.cmdCreateNewPSMAttribute> .Factory,
                ControllerCommandType          = typeof(Exolutio.Controller.Commands.Atomic.PSM.MacroWrappers.cmdCreateNewPSMAttribute),
                AcceptedSelectedComponentType  = typeof(PSMClass),
                ScopeIsSelectedComponent       = true,
                PSMOnly = true,
                Icon    = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.AddAttributes)
            };

            AddPSMAssociationCommand = new guiControllerCommand
            {
                Text = "Add association",
                ControllerCommandFactoryMethod = CommandFactory <cmdNewPSMAssociation> .Factory,
                ControllerCommandType          = typeof(cmdNewPSMAssociation),
                NoScope    = true,
                PSMOnly    = true,
                OpenDialog = true,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.AddChildren),
            };

            AddPSMGeneralizationCommand = new guiControllerCommand
            {
                Text = "Add generalization",
                ControllerCommandFactoryMethod = CommandFactory <cmdNewPSMGeneralization> .Factory,
                ControllerCommandType          = typeof(cmdNewPSMGeneralization),
                NoScope    = true,
                PSMOnly    = true,
                OpenDialog = true,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.gen),
            };

            AddPSMChildInterpreted = new guiControllerCommand
            {
                Text = "Add interpreted child",
                ControllerCommandFactoryMethod = CommandFactory <Controller.Commands.Complex.PSM.cmdCreateNewPSMClassAsIntChild> .Factory,
                ControllerCommandType          = typeof(Controller.Commands.Complex.PSM.cmdCreateNewPSMClassAsIntChild),
                PSMOnly    = true,
                OpenDialog = true,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.AddChildren),
                AcceptedSelectedComponentType = typeof(PSMClass),
                ScopeIsSelectedComponent      = true
            };
            AddPSMChildUnInterpreted = new guiControllerCommand
            {
                Text = "Add uninterpreted child",
                ControllerCommandFactoryMethod = CommandFactory <cmdCreateNewPSMClassAsUnintChild> .Factory,
                ControllerCommandType          = typeof(Exolutio.Controller.Commands.Complex.PSM.cmdCreateNewPSMClassAsUnintChild),
                PSMOnly    = true,
                OpenDialog = false,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.AddChildren),
                AcceptedSelectedComponentType = typeof(PSMClass),
                ScopeIsSelectedComponent      = true
            };

            ValidateXMLFile     = new guiValidateCommand();
            ValidateAllXMLFiles = new guiValidateAllCommand();

            SplitPSMAttributeCommand   = new guiSplitPSMAttribute();
            SplitPSMAssociationCommand = new guiSplitPSMAssociation();
            SplitPSMAttribute3Command  = new guiSplitPSMAttribute()
            {
                Count = 3
            };
            SplitPSMAssociation3Command = new guiSplitPSMAssociation()
            {
                Count = 3
            };
            SplitPSMAttribute4Command = new guiSplitPSMAttribute()
            {
                Count = 4
            };
            SplitPSMAssociation4Command = new guiSplitPSMAssociation()
            {
                Count = 4
            };
            SplitPSMAttributeMoreCommand = new guiControllerCommand
            {
                Text = "More...",
                ControllerCommandFactoryMethod = CommandFactory <cmdSplitPSMAttribute> .Factory,
                ControllerCommandType          = typeof(cmdSplitPSMAttribute),
                PSMOnly    = true,
                OpenDialog = true,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.AddAttributes),
                ScopeIsSelectedComponent      = true,
                AcceptedSelectedComponentType = typeof(PSMAttribute)
            };
            SplitPSMAssociationMoreCommand = new guiControllerCommand
            {
                Text = "More...",
                ControllerCommandFactoryMethod = CommandFactory <cmdSplitPSMAttribute> .Factory,
                ControllerCommandType          = typeof(cmdSplitPSMAttribute),
                PSMOnly    = true,
                OpenDialog = true,
                Icon       = ExolutioResourceNames.GetResourceImageSource(ExolutioResourceNames.split_psm_assoc),
                ScopeIsSelectedComponent      = true,
                AcceptedSelectedComponentType = typeof(PSMAssociation)
            };
            CreateSequenceContentModelCommand = new guiCreateContentModelCommand()
            {
                Type = PSMContentModelType.Sequence
            };
            CreateChoiceContentModelCommand = new guiCreateContentModelCommand()
            {
                Type = PSMContentModelType.Choice
            };
            CreateSetContentModelCommand = new guiCreateContentModelCommand()
            {
                Type = PSMContentModelType.Set
            };
            ShiftLeft = new guiShiftCommand()
            {
                Left = true
            };
            ShiftRight = new guiShiftCommand()
            {
                Left = false
            };
            PSMShiftUp = new guiShiftPSMAttributeCommand()
            {
                Up = true
            };
            PSMShiftDown = new guiShiftPSMAttributeCommand()
            {
                Up = false
            };
            LeaveOutUnintAM = new guiLeaveOutUnintAM();
            InsertPSMClass  = new guiInsertPSMClass();
            //CutAssociation = new guiCutAssociation();
            //DeletePSMAttribute = new guiDeletePSMAttribute();
            PSMDelete       = new guiPSMDelete();
            DeleteSubtree   = new guiDeleteSubtree();
            DeletePSMSchema = new guiDeletePSMSchema();

            MappingV = new guiMappingV();

            #endregion

            #region other

            VerifyModelCommand         = new guiVerifyModelCommand();
            LocateInterpretedComponent = new guiLocateInterpretedComponent();

            #endregion

            #region align

            List <guiAlignCommand> alignCommands = new List <guiAlignCommand>();

            AlignLeftCommand = new guiAlignCommand {
                Alignment = EAlignment.Left, AllAlignCommands = alignCommands
            };
            AlignRightCommand = new guiAlignCommand {
                Alignment = EAlignment.Right, AllAlignCommands = alignCommands
            };
            AlignTopCommand = new guiAlignCommand {
                Alignment = EAlignment.Top, AllAlignCommands = alignCommands
            };
            AlignBottomCommand = new guiAlignCommand {
                Alignment = EAlignment.Bottom, AllAlignCommands = alignCommands
            };

            CenterVerticallyCommand = new guiAlignCommand {
                Alignment = EAlignment.CenterV, AllAlignCommands = alignCommands
            };
            CenterHorizontallyCommand = new guiAlignCommand {
                Alignment = EAlignment.CenterH, AllAlignCommands = alignCommands
            };
            DistributeVerticallyCommand = new guiAlignCommand {
                Alignment = EAlignment.DistributeV, AllAlignCommands = alignCommands
            };
            DistributeHorizontallyCommand = new guiAlignCommand {
                Alignment = EAlignment.DistributeH, AllAlignCommands = alignCommands
            };

            alignCommands.Add(AlignLeftCommand);
            alignCommands.Add(AlignRightCommand);
            alignCommands.Add(AlignTopCommand);
            alignCommands.Add(AlignBottomCommand);
            alignCommands.Add(CenterVerticallyCommand);
            alignCommands.Add(CenterHorizontallyCommand);
            alignCommands.Add(DistributeVerticallyCommand);
            alignCommands.Add(DistributeHorizontallyCommand);

            #endregion

            #region traversing

            SelectNextCommand = new guiSelectNextCommand();
            SelectPrevCommand = new guiSelectNextCommand();

            #endregion

            #region OCL

            CreateOCLValidationScriptCommand = new guiCreateOCLScriptCommand()
            {
                CreatedScriptType = OCLScript.EOclScriptType.Validation
            };
            CreateOCLEvolutionScriptCommand = new guiCreateOCLScriptCommand()
            {
                CreatedScriptType = OCLScript.EOclScriptType.Evolution
            };
            OCLSyntaxCheckCommand     = new guiOCLSyntaxCheckCommand();
            RemoveOCLScriptCommand    = new guiRemoveOCLScriptCommand();
            RenameOCLScriptCommand    = new guiRenameOCLScriptCommand();
            SuggestConstraintsCommand = new guiSuggestConstraintsCommand();

            #endregion

            #region XRX

            CreateXRXPSMSchemaCommand       = new guiCreateXRXPSMSchemaCommand();
            GenerateXRXRestInterfaceCommand = new guiGenerateXRXRestInterfaceCommand();
            GenerateXRXXFormsCommand        = new guiGenerateXRXXFormsCommand();

            #endregion
        }