public SolutionWatcher() { if (Common.Instance.Solution != null) { Common.Instance.Solution.AdviseSolutionEvents(this, out mSolutionCookie); } mFileHistory.MaxHistory = Common.Instance.Settings.MaxFileHistory; mWindowEvents = Common.Instance.DTE2.Events.WindowEvents; mWindowEvents.WindowActivated += OnWindowActivated; mWindowEvents.WindowCreated += OnWindowCreated; mDocumentEvents = Common.Instance.DTE2.Events.DocumentEvents; mDocumentEvents.DocumentOpening += OnDocumentOpening; mDocumentEvents.DocumentOpened += OnDocumentOpened; mDocumentEvents.DocumentSaved += OnDocumentSaved; mSolutionItemsEvents = Common.Instance.DTE2.Events.SolutionItemsEvents; mSolutionItemsEvents.ItemAdded += OnItemAdded; mSolutionItemsEvents.ItemRemoved += OnItemRemoved; mSolutionItemsEvents.ItemRenamed += OnItemRenamed; RefreshOpenHistory(); OnFilesChanged += RefreshSymbolDatabase; }
private void RegisterToDTEEvents() { docEvents.DocumentOpening += DocumentEvents_DocumentOpening; docEvents.DocumentSaved += DocumentEvents_DocumentSaved; docEvents.DocumentClosing += DocEvents_DocumentClosing; buildEvents.OnBuildBegin += BuildEvents_OnBuildBegin; buildEvents.OnBuildDone += BuildEvents_OnBuildDone; EnvDTE80.Events2 events2 = dte.Events as EnvDTE80.Events2; if (events2 != null) { this.projectItemsEvents = events2.ProjectItemsEvents; this.projectItemsEvents.ItemAdded += ProjectItemsEvents_ItemAdded; this.projectItemsEvents.ItemRemoved += ProjectItemsEvents_ItemRemoved; this.projectItemsEvents.ItemRenamed += ProjectItemsEvents_ItemRenamed; } this.csharpProjectItemsEvents = dte.Events.GetObject("CSharpProjectItemsEvents") as EnvDTE.ProjectItemsEvents; if (this.csharpProjectItemsEvents != null) { this.csharpProjectItemsEvents.ItemAdded += ProjectItemsEvents_ItemAdded; this.csharpProjectItemsEvents.ItemRemoved += ProjectItemsEvents_ItemRemoved; this.csharpProjectItemsEvents.ItemRenamed += ProjectItemsEvents_ItemRenamed; } }
public SolutionWatcher() { if (Common.Instance.Solution != null) { Common.Instance.Solution.AdviseSolutionEvents(this, out mSolutionCookie); } mFileHistory.MaxHistory = Common.Instance.Settings.MaxFileHistory; mWindowEvents = Common.Instance.DTE2.Events.WindowEvents; mWindowEvents.WindowActivated += OnWindowActivated; mWindowEvents.WindowCreated += OnWindowCreated; mDocumentEvents = Common.Instance.DTE2.Events.DocumentEvents; mDocumentEvents.DocumentOpening += OnDocumentOpening; mDocumentEvents.DocumentOpened += OnDocumentOpened; mDocumentEvents.DocumentSaved += OnDocumentSaved; mSolutionItemsEvents = Common.Instance.DTE2.Events.SolutionItemsEvents; mSolutionItemsEvents.ItemAdded += OnItemAdded; mSolutionItemsEvents.ItemRemoved += OnItemRemoved; mSolutionItemsEvents.ItemRenamed += OnItemRenamed; RefreshOpenHistory(); OnFilesChanged += RefreshSymbolDatabase; }
public void populateDefaultVSComObjects() { VisualStudio_2010.Package = this; VisualStudio_2010.ErrorListProvider = new ErrorListProvider(this); VisualStudio_2010.IVsUIShell = this.getService <IVsUIShell>(); VisualStudio_2010.DTE2 = this.getService <EnvDTE.DTE, EnvDTE80.DTE2>(); VisualStudio_2010.OleMenuCommandService = this.getService <OleMenuCommandService>(); Events = VisualStudio_2010.DTE2.Events; BuildEvents = Events.BuildEvents; CommandEvents = Events.CommandEvents; DebuggerEvents = Events.DebuggerEvents; DocumentEvents = Events.DocumentEvents; DTEEvents = Events.DTEEvents; FindEvents = Events.FindEvents; MiscFilesEvents = Events.MiscFilesEvents; OutputWindowEvents = Events.OutputWindowEvents; SelectionEvents = Events.SelectionEvents; SolutionEvents = Events.SolutionEvents; SolutionItemsEvents = Events.SolutionItemsEvents; TaskListEvents = Events.TaskListEvents; TextEditorEvents = Events.TextEditorEvents; WindowEvents = Events.WindowEvents; BuildEvents.OnBuildBegin += (scope, action) => VisualStudio_2010.On_BuildBegin.invoke(); BuildEvents.OnBuildDone += (scope, action) => VisualStudio_2010.On_BuildDone.invoke(); BuildEvents.OnBuildProjConfigDone += (Project, ProjectConfig, Platform, SolutionConfig, Success) => { //@"On OnBuildProjConfigDone: project: {0} , ProjectConfig: {1} , Platform: {2}, SolutionConfig: {3} , Success: {4}".debug(Project,ProjectConfig, Platform, SolutionConfig,Success); if (Success) { VisualStudio_2010.On_ProjectBuild_OK.invoke(Project); } else { VisualStudio_2010.On_ProjectBuild_Failed.invoke(Project); } }; SolutionEvents.Opened += () => VisualStudio_2010.On_SolutionOpened.invoke(); DocumentEvents.DocumentOpened += (document) => VisualStudio_2010.on_DocumentOpened.invoke(document); DocumentEvents.DocumentClosing += (document) => VisualStudio_2010.on_DocumentClosing.invoke(document); DocumentEvents.DocumentSaved += (document) => VisualStudio_2010.on_DocumentSaved.invoke(document); DocumentEvents.DocumentOpening += (documentPath, readOnly) => VisualStudio_2010.on_DocumentOpening.invoke(documentPath, readOnly); TextEditorEvents.LineChanged += (startPoint, endPoint, hInt) => VisualStudio_2010.on_LineChanged.invoke(startPoint, endPoint); WindowEvents.WindowActivated += (windowGotFocus, windowLostFocus) => { if (windowGotFocus.Document.notNull()) { VisualStudio_2010.on_ActiveDocumentChange.invoke(windowGotFocus.Document); } }; }
private void ConnectEvents() { var events = (EnvDTE80.Events2)Dte.Events; _solutionEvents = events.SolutionEvents; _solutionEvents.Opened += Solution_Opened; _solutionEvents.AfterClosing += Solution_AfterClosing; _solutionEvents.ProjectAdded += Solution_ContentChanged; _solutionEvents.ProjectRemoved += Solution_ContentChanged; _solutionEvents.ProjectRenamed += (item, newName) => Solution_ContentChanged(item); _projectItemsEvents = events.ProjectItemsEvents; _projectItemsEvents.ItemAdded += Solution_ContentChanged; _projectItemsEvents.ItemRemoved += Solution_ContentChanged; _projectItemsEvents.ItemRenamed += (item, newName) => Solution_ContentChanged(item); _solutionItemsEvents = events.SolutionItemsEvents; _solutionItemsEvents.ItemAdded += Solution_ContentChanged; _solutionItemsEvents.ItemRemoved += Solution_ContentChanged; _solutionItemsEvents.ItemRenamed += (item, newName) => Solution_ContentChanged(item); _miscFilesEvents = events.MiscFilesEvents; _miscFilesEvents.ItemAdded += Solution_ContentChanged; _miscFilesEvents.ItemRemoved += Solution_ContentChanged; _miscFilesEvents.ItemRenamed += (item, newName) => Solution_ContentChanged(item); _projectsEvents = events.ProjectsEvents; _projectsEvents.ItemAdded += Solution_ContentChanged; _projectsEvents.ItemRemoved += Solution_ContentChanged; _projectsEvents.ItemRenamed += (item, newName) => Solution_ContentChanged(item); _documentEvents = events.DocumentEvents; _documentEvents.DocumentOpened += DocumentEvents_DocumentOpened; _documentEvents.DocumentSaved += DocumentEvents_DocumentSaved; if (Dte.Solution != null) { Solution_Opened(); } }