AllMargins / OverviewMargin extension updated to VisualStudio 2012

**Edit: 11/7/2012, Microsoft released the newly updated Productivity Power Tools 2012 complete with Enhanced Scrollbar!**

Back in VisualStudio 2008, we had the awesome RockScroll / MetaScroll extension.

When VisualStudio 2010 was released, this extension was never ported. As far as I know, this is because VS2010 was a whole new IDE written in WPF, which VS2008 was not, so it would have been a difficult port. Instead, David Pugh of Microsoft wrote a nice set of extensions that performed similar functionality. This included the OverviewMargin and Structure Adornments extensions and a few others, and was all bundled into one extension named “AllMargins”.

After a while, AllMargins was no longer supported and removed from the extensions gallery. Microsoft released the Visual Studio 2010 Productivity Power Tools instead, which included a feature called the “Enhanced Scrollbar”, which did a lot of the things that OverviewMargin and the older RockScroll did.

So now we are on to VisualStudio 2012, which picked up more of the 2010 Productivity Power Tools features. However the “Enhanced SCrollbar” was not one of these features, but you can vote for it to be re-added here: http://connect.microsoft.com/VisualStudio/feedback/details/728679/useful-features-from-productivity-power-tools-missing

Until that happens, I dug up the old AllMargins / OverviewMargin extension source, and converted it to VisualStudio 2012. I also renamed it to “OverviewMargin2012.vsix” because it is a bit more searchable and intuitive than “AllMargins.vsix”.

Here is what my VS2012 looks like, with the dark theme, a custom color scheme, OverviewMargin2012, and ReSharper:

The source is available on my GitHub: https://github.com/rally25rs/OverviewMargin2012, or here is the built .vsix:

OverviewMargin2012.vsix

Once you install the .vsix, you can also configure it by editing the values in the registry. See here: http://dotnetdust.blogspot.com/2010/04/how-to-configure-allmargins-extension.html

If I have time, I would like to make an actual “settings” menu for this stuff, instead of having to edit it in the registry, but for now, editing the registry works.

Legal Stuff:

This build of OverviewMargin2012, based off AllMargins, is covered by the Microsoft Public License (MS-PL).

About these ads
Tagged with: ,
Posted in Programming
9 comments on “AllMargins / OverviewMargin extension updated to VisualStudio 2012
  1. FilipiVC says:

    Thank you, you saved a life. Can you share the source code updated?

    • rally25rs says:

      FilipiVC, I made a bug fix and updated the .vsix, so you will want to re-download it. I’ll try to get the code up somewhere too. With the MS-PL license, I just want to make sure I can re-post the source.

      • FilipiVC says:

        ok, I’m having problems at the aspx source view, visual studio crash and I lost my job. I was thinking to fix some of these errors, maybe removing the functions that already exist natively.

      • rally25rs says:

        I posted the source here: https://github.com/rally25rs/OverviewMargin2012 make sure you install the VisualStudio 2012 SDK before you try to open it in VS. If you manage to fix any bugs, please send a pull request on GitHub. Thanks!

      • FilipiVC says:

        Just to know the error:
        The process was terminated due to an unhandled exception.
        Exception Info: System.ObjectDisposedException
        Stack:
        at Microsoft.VisualStudio.Text.Utilities.ShiftClickScrollBarMargin.ThrowIfDisposed()
        at Microsoft.VisualStudio.Text.Utilities.ShiftClickScrollBarMargin.get_VisualElement()

      • FilipiVC says:

        missed:

        at Microsoft.VisualStudio.Text.Utilities.ShiftClickScrollBarMargin.ThrowIfDisposed()
        at Microsoft.VisualStudio.Text.Utilities.ShiftClickScrollBarMargin.get_VisualElement()
        at Microsoft.VisualStudio.Extensions.OverviewMargin.Implementation.OverviewMargin+SimpleScrollBar.get_UseRealScrollBarTrackSpan()
        at Microsoft.VisualStudio.Extensions.OverviewMargin.Implementation.OverviewMargin+SimpleScrollBar.ResetTrackSpan()
        at Microsoft.VisualStudio.Extensions.OverviewMargin.Implementation.OverviewMargin+SimpleScrollBar.OnScrollBarIsVisibleChanged(System.Object, System.Windows.DependencyPropertyChangedEventArgs)

  2. rally25rs says:

    I just made an update to the code that fixed a crash issue when closing a .xaml window. Please re-download!

  3. Men you are so *** awesome! All Margins was the only missing feature of VS 2012. Thanks a lot!

  4. Milan says:

    Fabulous. I agree.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

CodingWithSpike is Jeff Valore. A professional software engineer, focused on JavaScript, Web Development, C# and the Microsoft stack. Jeff is currently a Senior Software Engineer at Falafel Software.
Follow

Get every new post delivered to your Inbox.

%d bloggers like this: