VS 2015 CTP6 - How to deternine details of Outlines in the code Window - visual-studio

I have a package (used to be an Addin) that extends Visual Studio to print the source code of VS projects in color. The current addin also allows the users to choose to output/or not the source in Closed Outlines.
In VS 2015, how does one determine the details (start line, end line, open/closed, etc.) of each Outline in the code window?

Use MEF to import an IOutliningManagerService, call GetOutliningManager() with your TextView, then use its methods to see the collapsible regions.

Related

Code color code and highlighting for unity

I have just starting learning how to make games in Unity, using Visual Studio as the Script Editor, I see other people have their Code colour coded and it also has auto completion.
I've followed some tutorials online but nothing has worked for me.
what do I have to install to get it working?
To add auto-completion you have to add the unity visual studio package. To add this package please type in your windows search field: "Visual Studio Installer" and then click at the visual studio version the button "change". After that, a new window opens in this window click the field with the unity package and then install this package. Now you have auto-completion in Visual Studio.
To add colors look this video: https://www.youtube.com/watch?v=_g1TyAGk6Lk& I really recommend this color theme.
The Color Coding of Code can be found on the Tools>Options>Environment>Fonts and Colors. For example, you want to change the color for the Operators (+, -, /, *, etc.), you would need to find it in the Display items List and edit (found on the Right Side of the Display Items) the color of the foreground (the text itself), it's background or whether it is displayed in bold or not.
I believe that auto completion or IntelliSense is on by default as for what I have Experienced in switching from MonoDevelop to Visual Studio 2017.
Actually, i think you're looking at a popular visual studio plugin called Resharper;
https://www.jetbrains.com/resharper/
It also has a Unity3D plugin (for resharper) which adds full support. That's were the coloring and extra intellisense comes from.
You can see some sample pictures here; https://github.com/JetBrains/resharper-unity

Refactor menu missing from Visual Studio 2015

I am having trouble finding the right-click context menu in Visual Studio 2015. I know that nothing is wrong with my project or the file I am working. I can find the right-click context refactor menu in Visual Studio 2013. However, in Visual Studio 2015 there isn't a refactor context menu in the right-click context menu.
Where did it go? How do I get it back?
Your suggestion cannot include menu Edit → Refactor.
I have tried to reset my Visual Studio settings back to default using menu Tools → Import and Export Settings and that didn't bring the menu back either.
Some of the refactoring tools have been relocated or are at least accessible in a different manner than they were previously.
Using the extract method refactor as an example, you can still use this function; it is just not done the same as before:
Right click
Quick actions
Click extract Method
I think they've changed it to feel more "ReSharper"ey. All of the functionality should still be there however.
Here's more information on refactoring in Visual Studio 2015 - hopefully this helps! Refactoring (C#)
You no longer need to access the refactoring using the mouse right click.
It is recommended that you use the keyboard shortcut keys within Visual Studio.
For all possible shortcut keys, see Default Keyboard Shortcuts in Visual Studio, Refactor.
You might need to build the project to get it to work.
See Code Editing ASP.NET Web Forms in Visual Studio 2013 | Microsoft Docs. (If it is missing then the point is that I am using an example provided by Microsoft.). In Refactoring and Renaming see To extract a method in a C# page. When I follow the instructions I cannot find the feature to extract the code to a method. When I tried the Edit menu it said I did not have valid code. Then I built the project and the feature to extract the code was available and worked.
If you change the name of the object you are refactoring, the light bulb then appears to the left which asks if you wish to change the name of the object (i.e. refactor) or generate a new constructor for the new named object.
Ctrl + . is the shortcut key for extracting a method in Visual Studio 2015 and onward.
Ctrl+M, R does not work anymore in new versions.

How to generate class diagram from project in Visual Studio 2013?

In Visual Studio 2010 I can generate class diagram from my project with 2 clicks. But now in Visual Studio 2013 I don't see the option "View Class Diagram" in project menu. Where did this item disappear? How can I generate class diagram from project now?
Right click on the project in solution explorer or class view window --> "View" --> "View Class Diagram"
For creating real UML class diagrams:
In Visual Studio 2013 Ultimate you can do this without any external tools.
In the menu, click on Architecture, New Diagram
Select UML Class Diagram
This will ask you to create a new Modeling Project if you don't have one already.
You will have a empty UMLClassDiagram.classdiagram.
Again, go to Architecture, Windows, Architecture Explorer.
A window will pop up with your namespaces, Choose Class View.
Then a list of sub-namespaces will appear, if any. Choose one, select the classes and drag them to the empty UMLClassDiagram1.classdiagram window.
Reference: Create UML Class Diagrams from Code
For Visual Studio 2019 and Visual Studio 2017 Users
For People who are missing this old feature in VS2019 (or maybe VS2017) from the old versions of Visual Studio
This feature still available, but it is NOT available by default, you have to install it separately.
Open VS 2019 go to Tools -> Get Tools and Features
Select the Individual components tab and search for Class Designer
Select this Component and Install it, After finish installing this component (you may need to restart visual studio)
Right-click on the project and select Add -> Add New Item
Search for 'class' word and NOW you can see Class Diagram component
see this answer also to see an image associated
https://stackoverflow.com/a/66289543/4390133
(whish that the moderator realized this is the same question and instead of deleting my answer, he could mark one of the questions as duplicated to the other)
Update to create a class-diagram for the whole project
Here is how to generate a diagram for the whole project (after applying the previous steps)
Add class diagram to the project
if the option Preview Selected Items is enabled in the solution explorer, disabled it temporarily, you can re-enable it later
open the class diagram that you created in step 2 (by double-clicking on it)
drag-and-drop the project from the solution explorer to the class diagram

Visual Studio - I want "Go To Definition" to open Object Browser, not "metadata"

In Visual Studio version 2002 and 2003 "Go To Definition" would find the selected type or member in the Object Browser. In 2005 onwards it opens a source window "generated from metadata" instead. How do I configure these newer versions to go to Object Browser? (In other words, I have the opposite problem to this one.)
Installing ReSharper makes this change, so I know it must be possible, but how do I do it without ReSharper?
As workaround you can create the following macro:
Sub GoToDefinitionUsingObjectBrowser()
DTE.ExecuteCommand("Edit.SelectCurrentWord")
DTE.ExecuteCommand("View.ObjectBrowser")
DTE.ExecuteCommand("View.ObjectBrowserSearch", DTE.ActiveDocument.Selection.Text)
End Sub
Then go to Tools/Options/Keyboard and assign hot key for this macro.
Tested in Visual Studio 2010.
I believe what re-sharper is doing is doing some hooks on that click event with the Visual Studio SDK I do not think there is any simple menu or location that can change that setting.
Instructions (pulled from CODE Magazine) edited down a bit to the part that pertainst to making the right click menus.
Creating a VSPackage
...The VS SDK installs a few more project
templates in Visual Studio, one of
them being the Visual Studio
Integration Package (Figure 1),
located under Other Project Types >
Extensibility on the New Project
dialog box.
After this standard dialog box, the
Visual Studio Integration Package
Wizard guides you through creating the
new package project:
Select a programming language. The wizard currently supports Visual
C++ and Visual C#. You can create or
pick a key file to sign the new
package.
Supply basic VSPackage information. The wizard prompts you
for details such as the company name,
VSPackage name, version, icon,
detailed information, and minimum
Visual Studio edition (such as
Professional or Enterprise) that the
package is designed to at this step.
This information goes into the Visual
Studio splash screen and About dialog
box and is also used to request a PLK
for the package (covered later).
Select VSPackage options. A package may add three types of
functionality: Menu Command, Tool
Window, and Custom Editor.
A menu command is a command added either to the menu
at the top of Visual Studio or
to a context menu (right-click).
When the wizard finishes its job, the
VS SDK adds core elements to the
solution to support the new package.
For instance, if you selected Tool
Window as part of the functionality
for the package, the project contains
a user control where you should place
the visual controls for the window.
The project also contains files for
.NET code to handle the functionality
that you will add to the package.
A CtcComponents folder contains
pseudo-C++ files (ctc files) where you
define things like menu, groups,
buttons, etc. Fortunately, Microsoft
is phasing out CTC files and replacing
them with a friendlier, XML-based VSCT
file format (which will ship in the
SDK for Visual Studio 2008).
The wizard creates a few other files
with .NET code required for the
plumbing of the package within Visual
Studio. Some of these files contain
classes that map the C++ constants to
.NET constants and other files contain
configuration information for the
package when it’s installed.
I know it has been a long time, but it appears, at least in newer versions of Visual Studio for the VB (Basic) language, to be an setting in the options.
Text Editor > Basic > Advanced
Under "Go to Definition".
I don't know why they don't have that for other languages...
Place the mouse cursor on the object you want to access on the object browser. Then, use the keyboard shortcut ctrl + alt + j, which will take you directly to the Object Browser window.

Visual Studio 2010 - recommended extensions [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
This question's answers are a community effort. Edit existing answers to improve this post. It is not currently accepting new answers or interactions.
What are your recommended extensions for Visual Studio 2010?
(Please indicate if its free or not And also its purpose / function too)
Free:
VsCommandBudy - Extend VS with external commands where really need them (Free)
PowerCommands - useful extensions for the Visual Studio 2010 adding additional functionality to various areas of the IDE.
DevExpress CodeRush Xpress - Coding assistance, Intellisense navigation,etc.
AnkhSVN - Subversion Support for Visual Studio.
Ghost Doc - Simplify your XML Comments.
Visual Studio Color Theme Editor - make your VS2010 look pretty with themes.
VsVim - VIM emulation layer for Visual Studio.
DPack - FREE collection of Microsoft Visual Studio tools.
VSFileNav - fast searcher with wildcards + camel case searches.
Sonic file finder - fast and convenient search.
AllMargins
tangible T4 Editor plus modeling tools for VS2010 adds IntelliSense and Syntax Coloring to T4 Text Templates
Word Wrap with Auto-Indent
Indentation Matcher Extension
Structure Adornment
BlockTagger
BlockTaggerImpl
SettingsStore
SettingsStoreImpl
Source Outliner - not available on this link.
Triple Click - Makes triple click select an entire line.
ItalicComments
Go To Definition - Make ctrl+click perform a "Go To Definition" on the identifier under the cursor
Spell Checker - not available on this link.
Remove and Sort Using - Adds a context menu entry to Solution Explorer that sorts and removes using statements on every file in the solution, project, or on the individual file.
Format Document - Adds a context menu entry to Solution Explorer and the code window that executes the Edit-Advance-Format Document command on every file in the solution, project, or current code window.
Open Folder in Windows Explorer - Extends the Open Folder in Windows Explorer context menu option to the code editor and to all files in solution explorer.
Find Results Highlighter - Highlights the search text in the find results windows.
Regular Expressions Margin - A margin which exposes .Net Regular Expressions search and replace capabilities on a given code window.
VSCommands - not available on this link.
HelpViewerKeywordIndex - Visual Studio Extension for the Microsoft Help Viewer
StyleCop - StyleCop analyzes C# source code to enforce a set of best practice style and consistency rules.
Extension Analyzer - Extension Analyzer helps debug issues with VSIX Components, Visual Studio Packages, PkgDef Files and MEF Components.
CodeCompare - Code Compare is an advanced file and folder comparison tool. This programming languages oriented diff tool can be used as a Visual Studio add-in and as a standalone application.
Team Founder Server Power Tools - not available on this link
VS10x Selection Popup - not available on this link
Color Picker Completion - not available on this link
Numbered Bookmarks - Numbered Bookmarks allows users to create and recall bookmarks by using numbers. User can create 10 bookmarks (starting from 0 to 9).
Mouse Zoom - Mouse zoom at the mouse's cursor instead of at the top of the visible document. See VS options...
Visual Studio 2010 Pro Power Tools - A set of extensions to Visual Studio Professional (and above) which improves developer productivity.
JSEnhancements - provides outlining and matching braces highlighting features for Visual Studio JavaScript editor; provides fantastic #region collapsing in JS and CSS files, making long files much easier to handle;
Code Contracts Editor Extensions - Displays Code Contracts (when editing C#) in code, Intellisense, and in metadata files.
WoVS Quick Add Reference - Add missing assembly references right from the code editor
JScript Editor Extensions -
Align By
T4 Editor
Quick Open File for Visual Studio 2010 - quick opening any solution file
CleanProject - Cleans Visual Studio Solutions
PhatStudio - fast file navigation and quickly opening files
VsVim - Vim style keyboard shorcuts
Chutzpah - Open source JavaScript test runner
I Hate #Regions - makes expanded regions less disturbing by making the font smaller
Not Free:
Resharper
Visual Assist X
JustCode
ViEmu
CodeRush with Refactor! Pro
VisualSVN
VS10x Code Map - displays a graphical nested representation of the current editor window code
VS10x Editor View Enhancer
NuGet
NuGet (formerly NuPack) is a free, open source developer focused package management system for the .NET platform intent on simplifying the process of incorporating third party libraries into a .NET application during development.
PowerCommands (free)
AnkhSVN (free)
Even if you use other SVN shells outside VS (like TortoiseSVN), I recommend to install this Source Control Provider to automatically keep track of file renames, deletions and the like.
Visual Assist X(not free)
Ghost Doc (Free)
It takes a while to configure it properly, but it can be quite useful.
From my blog post (all free):
Word Wrap with Auto-Indent
Indentation Matcher Extension
Structure Adornment
This also installs the following extensions:
BlockTagger
BlockTaggerImpl
SettingsStore
SettingsStoreImpl
Source Outliner
Triple Click
ItalicComments
Go To Definition
Spell Checker
Remove and Sort Using
Format Document
Open Folder in Windows Explorer
Find Results Highlighter
Regular Expressions Margin
VSCommands
HelpViewerKeywordIndex
StyleCop
Visual Studio Color Theme Editor
PowerCommands for Visual Studio 2010
Extension Analyzer
CodeCompare
Team Founder Server Power Tools
VS10x Selection Popup
Color Picker Completion
Numbered Bookmarks
DevExpress CodeRush/Refactor! Pro (not free, $249.99)
It's way better than Resharper (which by the way always slowed down my VS to a crawl), it works with C# and VB.NET (including refactoring) and the support and community is excellent. Worth the price tag. And yes, it does support 2010 (in RC at the time of this writing).
Visual Studio Color Theme Editor (free)
I can't code unless my VS2010 has a StackOverflow-like theme.
VisualSVN (not-free)
I personally prefer this over AnkhSVN since its not an SCC provider and doesn't add extra files to my repository.
VisualHG is a Mercurial Source control plugin that drives TortoiseHG from VS. I'm a big fan of Mercurial & DVCS. VisualHG makes it nice n integrated. Git fans - I'm not asking for a flame war. Hg is just my brand.
VSCommands is simply one of the best FREE plugins ot there!
(visual studio gallery link)
DevExpress CodeRush Xpress (free)
tangible T4 Editor plus modeling tools for VS2010 adds IntelliSense and Syntax Coloring to T4 Text Templates (Free)
If you are a Vim aficionado...
VsVim - free
ViEmu - not free (also not yet released)
CodeMaid seems to be pretty useful - it AutoFormats on save which saves a lot of time between developers and code-diffs. (Are there other tools that can use the VS AutoFormat document?)
VS10x Code Map
That is very cool. Easy jumping to property, method. And easy expand collapse region and more.
ReSharper (not-free)
World of VS Default Browser Switcher for easily switching browser in web projects.
Code Contracts Editor Extensions, a free extension which provides information about inherited contracts for the method you're currently working on, and a list of contracts for any methods that you're calling. Unfortunately, the latter feature conflicts with Resharper, but the former still works fine.
RockScroll (free) - Double-click on a word/symbol highlights all occurrences of that word/symbol. Also replaces the scroll bar with a preview of your code, with edit spots and "all occurences" lines highlighted.
Example of use: want to see whether a variable is used anywhere else in current source file? Double-click variable, look at scroll bar for any red highlights.
AtomineerUtils Pro (not free, $9.99 USD) is, in my opinion, better than Ghost Doc. But, just like Ghost Doc or any automatic documentation generator, the generated documentation is meant to be edited to be of any real value.
devColor (Free)
Small tool which underlines hex colors in stylesheets with the correct color. I really like how it integrates into the editor.
CleanProject - Cleans Visual Studio Solutions
How many times have you wanted to send a project to a friend or upload
it to a web site like MSDN Code Gallery only to find that your zip
file has lots of stuff that you don't need to send in it making the
file larger than it needs to be.
bin folder obj folder TestResults folder Resharper folders And then if
you forget about removing Source Control bindings whoever gets your
project will be prompted about that. As someone who does this process
a great deal I decided to share with you my code for cleaning a
project.
I can't live without DPack - especially when working on large projects, makes navigating between files and members much easier. And it's free.
Favorite shortucts:
Alt+U : file browser, filters files as you type
Alt+G : code browser, filters all members as you type
Alt+M : code browser, filters methods in the current file as you type
...and so on. Much easier for me then finding my way around Project Explorer.
Vingy (Free)
Vingy 1.0 is simple, but effective add in for Visual Studio 2010 so that you can search the web in a non intrusive way, and can filter results based on sources.
Vingy http://lh4.ggpht.com/__Mw4iY-4nuY/TKic0LcfKgI/AAAAAAAAA7s/OR82RFQFSU8/s1600-h/image%5B14%5D.png
You can bring up Vingy either by clicking View->Other Windows –> Vingy Search Window from the Visual Studio IDE, or just by high lighting some text in the document and then clicking Tools –> Search Selected Text (Ctrl + 1).
Searching with Vingy is pretty straight forward. You can initiate a Search in two ways.
By typing the text in the Vingy search box and pressing ‘Enter’ or by clicking the ‘Go’ button
By highlighting some text in the editor when you type in Visual Studio, and then pressing Ctrl + 1
This is my list of extensions.
The list on this is pretty comprehensive, so I spent sometime to find the extensions that I need. Here is the snapshot. Hope it will help someone.
I tried installing Codemaid, and it appeared to be a nifty addon, but my Visual Studio response became very slow. Felt like some threads were doing some work all the time when Codemaid was on.
So uninstalling for now.
VSFileNav - (Free) A Find File in Solution tool (cross between SonicFileFinder and Resharper). Lightweight, easy to use and fast (I got sick of the huge startup time with Sonic).
Disclaimer : I wrote this tool.
Plugin to quickly go to any file in solution
Sonic file finder (free)
Fast switching between .h and .cpp file
Macro available here (free)
And that's it =)
WoVS Quick Add Reference
The “Quick Add Reference” extension augments the smart tag that VS shows for unrecognized types giving you a chance to add the corresponding assembly reference for that type plus corresponding “using” clause if needed in a single shot.

Resources