I’ve added GetTabs function to the ITabsStudioEngine interface that returns information about the all currently opened tabs. Information returned is modeled based on tab controls specification.
GetTabs returns generic list of TabsStudioExt.Tabs objects representing Visual Studio tab groups.
TabsStudioExt.Tabs has TabPanel control property, IsGroupSelected boolean property and TabList property returning generic list of TabsStudioExt.Tab.
TabsStudioExt.Tab has TabItem control property, IsTabSelected and IsPreviouslySelectedTab boolean properties, TabExtensions property returning generic list of TabExtension.
TabsStudioExt.TabExtension has Label control property, IsExtensionActive boolean property and EnvDTE.Window Window property. This window is a Visual Studio window object associated with the original Visual Studio tab.
Particularly interesting EnvDTE.Window Members are Caption property returning window title, Activate method making this window active and EnvDTE.Document Document property. This document is a Visual Studio document object associated with the Visual Studio window.
Particularly interesting EnvDTE.Document Members are Saved and ReadOnly boolean properties, FullName property returning path to the document.