/// <summary> /// Initializes for visual studio. /// </summary> /// <param name="package">The package.</param> internal void InitializeForVisualStudio(Microsoft.VisualStudio.Modeling.Shell.ModelingPackage package) { EnvDTE.DTE dte = (EnvDTE.DTE)ModelingPackage.GetGlobalService(typeof(EnvDTE.DTE)); _serviceProvider = package; _services = new Dictionary <Type, object>(); // Tjs ces 2 en premier car ils peuvent être utilisées par les autres _services.Add(typeof(ILogger), new DSLFactory.Candle.SystemModel.VisualStudio.Logger()); _services.Add(typeof(ICandleNotifier), new CandleNotifier()); _services.Add(typeof(ICacheProvider), new DSLFactory.Candle.SystemModel.Utilities.BasicCache()); _services.Add(typeof(IShellHelper), new ShellHelper()); _services.Add(typeof(IDatabaseImporter), new DSLFactory.Candle.SystemModel.Utilities.SchemaDiscover.DatabaseImporter()); _services.Add(typeof(EnvDTE.DTE), dte); _services.Add(typeof(IIDEHelper), new DSLFactory.Candle.SystemModel.CodeGeneration.IDEHelper(package)); _services.Add(typeof(IImportEntityHelper), new DSLFactory.Candle.SystemModel.Commands.ImportEntityHelper()); _services.Add(typeof(IImportInterfaceHelper), new DSLFactory.Candle.SystemModel.Commands.ImportInterfaceHelper()); _services.Add(typeof(IAssemblySelectorDialog), new DSLFactory.Candle.SystemModel.VisualStudio.AssemblySelectorDialog(_serviceProvider)); _services.Add(typeof(IRepositorySettingsStorage), new DSLFactory.Candle.SystemModel.Config.IDERepositorySettingsStorage()); _services.Add(typeof(IDialogService), new DSLFactory.Candle.SystemModel.VisualStudio.DialogService()); //try //{ // System.Reflection.Assembly asm = System.Reflection.Assembly.Load("DSLFactory.Candle.TFSVersionControl"); // Type type = asm.GetType("DSLFactory.Candle.TFSVersionControl.TFSService"); // services.Add(typeof(IVersionControl), Activator.CreateInstance(type)); //} //catch { } }
/// <summary> /// Alerts listeners when the shape is dragged and dropped. /// </summary> /// <param name="e">The diagram drag event arguments.</param> public override void OnDragDrop(DiagramDragEventArgs e) { base.OnDragDrop(e); bool canArrangeShapes = NestedChildShapes.Count == 0; if (DragDropHelper.OnDragDropOnPackage(this, e)) { if (canArrangeShapes) { ArrangeShapes(); } return; } if (e.Data.GetDataPresent(ServerExplorerHelper.DataSourceReferenceFormat)) { if (ServerExplorerHelper.ContainsTable(e.Data)) { if (ServerExplorerHelper.ImportTables(ModelElement as Package, new ServiceProvider( (IServiceProvider) ModelingPackage.GetGlobalService(typeof(DTE))), e.Data)) { if (canArrangeShapes) { ArrangeShapes(); } } } if (ServerExplorerHelper.ContainsStoredProcedures(e.Data)) { if (ServerExplorerHelper.ImportStoredProcedures(ModelElement as Package, new ServiceProvider( (IServiceProvider) ModelingPackage.GetGlobalService(typeof(DTE))), e.Data)) { if (canArrangeShapes) { ArrangeShapes(); } } } } }
/// <summary> /// Initializes a new instance of the <see cref="IDEHelper"/> class. /// </summary> /// <param name="package">The package.</param> internal IDEHelper(ModelingPackage package) { this.package = package; Dte = (DTE)ModelingPackage.GetGlobalService(typeof(DTE)); errorList = new ErrorListProvider(package); // Fenetre de sortie IVsOutputWindow outputWindowService = GetService <IVsOutputWindow>(typeof(SVsOutputWindow)); if (outputWindowService != null) { Guid guid = Guid.NewGuid(); outputWindowService.CreatePane(ref guid, "Candle", 1, 1); outputWindowService.GetPane(ref guid, out outputPane); outputPane.Clear(); } }