Tabs Studio Blog (organizing Visual Studio document tabs)

June 8, 2010

Visual Studio 2010 Pro Power Tools add new Document Tab Well options

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 9:21 pm

Microsoft has released Visual Studio 2010 Pro Power Tools today adding lots of new tab options:

General Document Tab Well Options

General Document Tab Well Options


Color Coding Document Tab Well Options

Color Coding Document Tab Well Options


The Start Page tab after Power Tools installation

The Start Page tab after Power Tools installation


First things first – you can have multiple rows of pinned tabs now:
Multiple rows of pinned tabs

Multiple rows of pinned tabs


I.e. after you pin some tabs, they will take multiple rows if needed. “Normal” tabs are still form single row. Pinned tabs can’t be reordered by mouse.

Tabs can be arranged vertically, to the left of the code window. When needed pinned tabs take several columns:

Vertical tabs

Vertical tabs


Two columns of vertical tabs

Two columns of vertical tabs

In addition to the standard tab list drop down for hidden tabs, “Visual Studio 2003 tab scrollers” can be enabled:

The standard drop down and Visual Studio 2003 tab scrollers

The standard drop down and Visual Studio 2003 tab scrollers

I couldn’t make Remove tabs by usage order to remove tabs. All other options, I think, are self explanatory.

Tabs Studio is not currently compatible with this extension (generates null reference exception at startup). I will see whether it can be fixed.

Update: Tabs Studio v2.0.5 released with Visual Studio 2010 Pro Power Tools support (read more about how it is supported).

 

 

Organize Visual Studio tabs with Tabs Studio add-in

May 9, 2010

Troubleshooter add-in

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 10:34 pm

Troubleshooter doesn’t extend Tabs Studio with new features, it just logs as much as possible about Visual Studio execution.

The following information is logged: OS version, VS version, loaded dlls (updated every 10 seconds), VS command/document/solution/window events, Tabs Studio events, WPF warnings. I try to collect as little personal data as possible. For example, instead of file names only extensions are logged and instead of project names only project types are logged.

Each Visual Studio session is logged in a separate file. Log file names look like “Troubleshooter January 24, 21_20_01 Part 0.txt” where “January 24, 21_20_01” is the time of Visual Studio start. If log file size exceeds 50 MB, a file for the next log part is created. Log files are created in the “LocalApplicationData\Sergey Vlasov\Tabs Studio” folder.

Troubleshooter installer installs the add-in for VS 2008 and creates a desktop shortcut to the logs folder.

Troubleshooter v1.0.1 and source code (including WiX based installer) are available. I think Visual Studio events subscription is the most interesting part of the source code for those interested in extending Visual Studio functionality.

May 8, 2010

Styling tabs in a separate window

Filed under: Uncategorized — Tags: , — Sergey Vlasov @ 7:43 pm

In Visual Studio 2010 default style for tabs uses left and right margins of 1 pixel:

<Style x:Key="DefaultTabsStyle" TargetType="TabsStudio:Tabs">
  <Setter Property="Margin" Value="1,0,1,0"/>
</Style>

It makes transition between Tabs Studio tabs and Visual Studio border under the tabs in the left and right corners smooth:

Left tab margin

Left tab margin


When tabs are in a separate window, default margins create white lines to the left and to the right of the tabs:
White lines to the left and to the right of the tabs

White lines to the left and to the right of the tabs


Setting margins to 0 removes these lines:

<Style TargetType="TabsStudio:Tabs" BasedOn="{StaticResource DefaultTabsStyle}">
  <Setter Property="Margin" Value="0,0,0,0"/>
</Style>

Excessive tabs margins removed

Excessive tabs margins removed

Another useful customization for tabs in a separate window is tabs background. The default background in VS 2010 style is transparent, it results in dark blue for normal tabs placement and white for tabs in a separate window. As an example, the following style sets tabs background to dark blue:

<Style TargetType="TabsStudio:Tabs" BasedOn="{StaticResource DefaultTabsStyle}">
  <Setter Property="Background" Value="#293955"/>
</Style>

Dark blue tabs background

Dark blue tabs background


A similar style can be used to customize tabs background in VS 2008, which is by default grey control brush.

April 20, 2010

Missing stdole.dll with a custom Visual Studio 2010 installation

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 8:18 am

If you perform a custom Visual Studio 2010 installation selecting only C++ development tools on a clean Windows 7 x64 machine, running Tabs Studio v2.0 generates “System.IO.FileNotFoundException: Could not load file or assembly ‘stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’ or one of its dependencies. The system cannot find the file specified.”

stdole FileNotFoundException

stdole FileNotFoundException


A workaround is to manually install stdole.dll in the GAC. For example, running the following single line command from an elevated command prompt:
"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\gacutil.exe" -i "C:\Program Files (x86)\Common Files\microsoft shared\MSEnv\PublicAssemblies\stdole.dll"
Installing stdole.dll in the GAC

Installing stdole.dll in the GAC


Another workaround is to add Visual C# development tools in the Visual Studio 2010 installer:
The Visual C# installation option

The Visual C# installation option

 

 

Organize Visual Studio tabs with Tabs Studio add-in

April 13, 2010

Visual Studio 2010 RTM

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 8:06 pm

Yesterday Visual Studio 2010 was released:

Visual Studio 2010 Ultimate

Visual Studio 2010 Ultimate


I don’t see any changes in default VS tabs behavior comparing to RC. I’ve tested Tabs Studio v1.9.0 with VS Professional, Premium and Ultimate 2010 RTM editions and everything worked just fine.

Updated Visual Studio 2010 tab style

Filed under: Uncategorized — Tags: , — Sergey Vlasov @ 11:38 am

I’ve changed selected tab colors to match the default VS 2010 theme – yellow for active, dark blue for inactive and grey for unfocused:

Active and inactive tabs

Active and inactive tabs


Unfocused tabs

Unfocused tabs

April 12, 2010

Close file buttons

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 10:41 pm

I’ve added the close file button to each extension. It should be particularly useful in SSMS where you more often need to close a file rather than a whole tab:

Close file buttons in SSMS

Close file buttons in SSMS


In the default style these buttons are collapsed, but you can use all usual properties in a custom style to make them visible. For example, the following style makes close file buttons visible on the selected tab and hides the close tab button in a tab when it contains more than a one extension:

<Style TargetType="TabsStudio:TabExtensionCloseButton" BasedOn="{StaticResource DefaultTabExtensionCloseButton}">
  <Style.Triggers>
    <Trigger Property="IsTabSelected" Value="True">
      <Setter Property="Visibility" Value="Visible"/>
    </Trigger>
  </Style.Triggers>
</Style>

<Style TargetType="TabsStudio:CloseTabButton" BasedOn="{StaticResource DefaultCloseTabButtonStyle}">
  <Style.Triggers>
    <Trigger Property="IsMultiExtensions" Value="True">
      <Setter Property="Visibility" Value="Collapsed"/>
    </Trigger>
  </Style.Triggers>
</Style>

March 15, 2010

Special tab titles in SSMS

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 1:11 pm

SQL Server Management Studio adds the [ReadOnly] prefix to the window title for read only scripts. It also adds Debugging… and Executing… suffixes when SQL scripts are debugged and executed:

Read only, debugging and executing tabs in SSMS 2008

Read only, debugging and executing tabs in SSMS 2008


I’ve added additional processing for such titles that removes excessive text and adds appropriate status icons:
Updated tabs view

Updated tabs view

February 18, 2010

Localizer add-in

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 9:05 am

I’ve prepared two tab context menu translations for German and Spanish localized Visual Studio editions:

Localized context menu in German Visual Studio 2008

Localized context menu in German Visual Studio 2008


Feel free to correct my translation and update it with other languages. To add a new language just copy an existing .resx and provide translated string values:
Localizer project

Localizer project


Download Localizer v1.0.0

February 15, 2010

Additional tabs layouts

Filed under: Uncategorized — Sergey Vlasov @ 12:02 pm

I’ve added two additional tabs layouts – Wrap and Stack:

Tabs layout option

Tabs layout option


Standard layout is the way it worked before:
Standard layout

Standard layout


Wrap layout retains original tab width and doesn’t try to distribute tabs between rows evenly:
Wrap layout

Wrap layout


Stack layout places tabs in a single vertical stack and should be useful when having a separate tabs window on a side of a code window:
Stack layout

Stack layout


The System.Windows.Controls.Panel TabPanel2 property was added to the TabsStudioExt.Tabs class replacing the System.Windows.Controls.Primitives.TabPanel TabPanel property. TabPanel is still present to prevent add-ins that use it from crashing at startup, but always returns an empty panel. I’ve updated Navigator, Saver and Sorter add-ins to use the new TabPanel2 property.

« Newer PostsOlder Posts »

Blog at WordPress.com.