In version 1.5 or newer it is possible to restrict individual Main Tab configurations to only ever have one open at any particular time. This is achieved through the use of the VirtualApplicationName property on the ShellTabItem; setting this to a name, say Fred4 ensures that only one Main Tab with a VirtualApplicationName of Fred4 can be open at once.
For example:
<l:ShellTabItem VirtualApplicationName="Fred4" x:Name="Fred4Pages"
Before opening the Fred4Pages configuration a check that the open Main Tabs don't already contain a VirtualApplication named Fred4; if it does not exist a new Main Tab is added, otherwise the existing one is activated.
Care should be take in the AddIn code to handle the case where the Main Tab is already open in a window other that the current one. To allow for this case the result of the NewTab function should be used, e.g.
Public Sub AddPagesTabItem()
Dim tab As IShellTabItem = NewTab("Fred4Pages")
If Not SystemUserOptions.fr_NoDefToolbars Then
ShowDefToolbarsPages(tab)
End If
The standard configurations that are restricted:
<l:ShellTabItem VirtualApplicationName="Fred4" x:Name="Fred4Pages"
<l:ShellTabItem VirtualApplicationName="Edt4" x:Name="Fred4Editions"
<l:ShellTabItem VirtualApplicationName="Tracy" x:Name="Fred4TracyLayouts"
<l:ShellTabItem VirtualApplicationName="Ted4" x:Name="Ted4Articles"