示例#1
0
        protected override void OnSelectionChanged(EventArgs e)
        {
            base.OnSelectionChanged(e);
            var entityShape = PrimarySelection as EntityShape;

            if (entityShape == null)
            {
                return;
            }

            var showSimpleOrmWindow = ShowSimpleOrmWindowSingleton.Instance();

            if (showSimpleOrmWindow == null)
            {
                return;
            }

            var windowFrame = showSimpleOrmWindow.GetWindowFrame();

            if (windowFrame.IsVisible() == Microsoft.VisualStudio.VSConstants.S_FALSE)
            {
                return;
            }

            var ormMappingWindow = showSimpleOrmWindow.GetOrmMappingWindow();
            var modelElement     = entityShape.ModelElement as EntityElement;

            ormMappingWindow.EntityElement = modelElement;
        }
        internal void OnPopUpMenuClickMappingRule(object sender, EventArgs args)
        {
            var showSimpleOrmWindow = ShowSimpleOrmWindowSingleton.Instance();

            if (showSimpleOrmWindow == null)
            {
                var package = ServiceProvider.GetService(typeof(Package)) as ModelingPackage;
                var simpleOrmMappingWindow = (SimpleOrmMappingWindow)package.FindToolWindow(typeof(SimpleOrmMappingWindow), 0, true);
                if (simpleOrmMappingWindow == null || simpleOrmMappingWindow.Frame == null)
                {
                    return;
                }

                ShowSimpleOrmWindowSingleton.Instanciate(simpleOrmMappingWindow);
            }

            var windowFrame   = ShowSimpleOrmWindowSingleton.Instance().GetWindowFrame();
            var mappingWindow = ShowSimpleOrmWindowSingleton.Instance().GetOrmMappingWindow();

            foreach (var selectedObject in CurrentSelection)
            {
                if (selectedObject is EntityShape)
                {
                    var entityShape  = selectedObject as EntityShape;
                    var modelElement = entityShape.ModelElement as EntityElement;
                    mappingWindow.EntityElement = modelElement;
                    ErrorHandler.ThrowOnFailure(windowFrame.Show());

                    return;
                }
            }
        }