navigation - Tomato Soup https://www.wholetomato.com/blog Visual Assist Team Blog Mon, 31 Mar 2025 16:19:06 +0000 en-US hourly 1 https://wordpress.org/?v=6.8.2 https://www.wholetomato.com/blog/wp-content/uploads/2025/05/favicon.ico navigation - Tomato Soup https://www.wholetomato.com/blog 32 32 227787260 Visual Assist 2025.1 release post https://www.wholetomato.com/blog/visual-assist-2025-1-release-post/ https://www.wholetomato.com/blog/visual-assist-2025-1-release-post/#respond Mon, 31 Mar 2025 15:52:53 +0000 https://www.wholetomato.com/blog/?p=4133 VA 2025.1 enhances usability with smarter navigation, better C++ module support, and more flexible refactoring options. The updated first-run dialog, configurable test snippets, and a refreshed UI improve the overall experience. Additionally, several key fixes...

The post Visual Assist 2025.1 release post first appeared on Tomato Soup.

]]>
VA 2025.1 enhances usability with smarter navigation, better C++ module support, and more flexible refactoring options. The updated first-run dialog, configurable test snippets, and a refreshed UI improve the overall experience. Additionally, several key fixes address navigation issues, assignment suggestions, and UI inconsistencies, ensuring a more stable and efficient development environment.

Download the release now from our website download page.

VA Integration modes: Updated First Run Dialog

In VA 2024.9, new integration modes were added to allow users to personalize their experience with how Visual Assist features were presented and accessed. You can visit the integration mode page to learn more about available integration modes. This dialog was initially shown for fresh installs only. 

VA 2025.1 makes the dialog appear for every user who has not previously encountered it, regardless of whether they are installing Visual Assist for the first time or have updated from an earlier version.

The first run dialog allows users to pick VA integration modes.

Option to exclude symbols in GoTo and List Methods navigation

This small tweak adds an option to skip selecting symbols after you navigate to it. In that way, you can immediately start typing before the symbol, or you would be able to keep your current selection even after jumping to different parts of the code.

This currently works for VA’s Go To and List Methods in Current File (Alt + M). Access the new option via the toolbar.

Open the options dialog to select symbol selection behavior.

Specify access level on Extract Method

VA introduces a new option that allows developers to specify the access level (public, private, or protected) directly when using the Extract Method refactoring tool.

Specify the visibility of methods obtained via Extract Methods using the new options.

This streamlines the refactoring process by providing an immediate choice of access level for the new method being created from the selected block of code. Previously, after extracting a method, the default access level was applied (usually private), and any changes to this required manual adjustment. 

With this update, developers can set the desired access level in the initial step of the extraction, ensuring better code organization and encapsulation from the outset.

New features added for C++ modules when importing

When declaring new modules into your project, VA will recognize what you are trying to do and core navigation and features will work accordingly. This includes autocompletion prompts, adding includes, finding references, and other pertinent navigations.

C++ modules were added in C++ 20 to help improve the compilation times and the overall build performance of C++ programs. Modules provided a modern alternative to traditional header files and includes by allowing programmers to define interfaces that are compiled separately and imported as needed. 

This reduces the need to include headers and recompile code unnecessarily, which can significantly speed up the build process. 

Modules in C++ are fairly new and the committee is still pushing for mass adoption. But whether you’re an early adopter of C++ modules or not, this VA update should help you find available modules should the need arise.

VA now parses C++ modules, enabling core navigations and features.

Support for *.IXX module files.

This change allows VA to parse and understand the new modular structure introduced with C++20. This means that developers can now work with module interface files (.ixx) directly within the Visual Assist environment, benefiting from features like syntax highlighting, code navigation, and intelligent code completion that were previously limited to traditional header and source files.

For instance, if you had symbols declared in an .IXX file, VA now properly parses them and navigation features such as Go To will now work properly.

Configurable snippet base for unit test generation

There are new configuration options available for Unit Test Generation that allow developers to customize the boilerplate code that is automatically generated when creating unit tests. 

The unit test generation feature was first introduced in VA 2024.9 and added a new feature to create a boilerplate that follows the Google Test framework. This creates a new test file, prepopulated with placeholders following the test structure to make it more convenient to users.

VA 2025.1 upgrades this new feature with the flexibility of specifying preferences and settings that align with their project’s requirements or personal coding standards.

New modernized tomato icon 

Our loveable tomato icon has been given a fresher look for the new development year! This was primarily done to improve user experience and accessibility. This change was made to increase contrast, and make VA’s features more distinguishable so users can utilize it more effectively in the IDE.

new whole tomato visual assist logo 2025

Updated tomato icon. Will be rolled out for every platform!

We’ve also taken the opportunity to maintain a consistent look and feel across all instances of our tomato icon. This update ensures that they appear correctly and uniformly across all platforms.

Excluding C# files from parsing via “settings.json” file.

VA 2025.1 builds upon a similar functionality introduced in VA 2022.4 where an option to consider configuration instructions outlined in a .json file can be used to skip unnecessary parsing when building solutions. 

This new feature does something similar, but for C# instead. The feature allows developers to specify which C# files should be excluded from parsing by Visual Assist through a configuration in a .json file.

This is particularly useful for developers working cross-platform as this tells Visual Studio and Visual Assist to “open a file but do not parse anything else apart from a specific part.” 

So even if users have dozens of non Visual Studio files in one directory, you can specify which files are part of the project you are trying to open. (Otherwise, VS and VA will try to parse the whole directory—very resource intensive and time consuming.)

Bug Fixes

For bug fixes and general improvements, most of them were based on user feedback and reports. The most notable of these updates are fixes for a crash happening when logging is enabled while debugging, and a hang involving the Go To features. There was also a pesky bug related to having two-monitor setups that is now fixed. 

The following list summarizes the most important bugs addressed in this release:

Fix for flashing in the Find References results window on start or when changing monitors.

  • Fix for Encapsulate field in C#.
  • Fix for VA Hashtags not being suggested.
  • Fix for assignment suggestions not appearing in some cases.
  • Fix for dialog hang that could sometimes happen when using Goto.
  • Increased the display limit for Move Method to Base Class to 12 base classes (from 6).
  • Fix for Move Method to Base Class sometimes not displaying the base class list to move to.
  • Fix for tip of the day links opening in Internet Explorer rather than the default browser.
  • Fix for a crash that could sometimes happen when troubleshoot logging is enabled.
  • Fix for attributes displaying in a difficult to read color when in dark mode.

Availability & Feedback

This release was made generally available on March 28th and can be downloaded via the downloads page. As always, we appreciate feedback, especially on recently introduced features and the UI changes we introduced. Thank you for helping us create a better experience for all our users.

Update now to an active version to utilize all the features and fixes in this release. And if you have any questions or encounter any issues, feel free to reach out to support@ewholetomato.com.

The post Visual Assist 2025.1 release post first appeared on Tomato Soup.

]]>
https://www.wholetomato.com/blog/visual-assist-2025-1-release-post/feed/ 0 4133
The Best Kept Secrets About C++ Extensions https://www.wholetomato.com/blog/the-best-kept-secrets-about-c-extensions/ https://www.wholetomato.com/blog/the-best-kept-secrets-about-c-extensions/#respond Thu, 05 May 2022 23:15:39 +0000 https://blog.wholetomato.com/?p=2307 While you are writing software, it is very important to focus on the logic of the code, its efficiency and performance, and the algorithms used. At the same time, the code should be understandable, readable,...

The post The Best Kept Secrets About C++ Extensions first appeared on Tomato Soup.

]]>
While you are writing software, it is very important to focus on the logic of the code, its efficiency and performance, and the algorithms used. At the same time, the code should be understandable, readable, and easily editable. There are special tools that allow you to automatically generate code, and simplify the process of editing and refactoring it.

One such tool is the Visual Assist C++ extension for Visual Studio. In this article, we list 10 compelling reasons why you should definitely install and use this extension to develop programs using Visual Studio C++.

Does it enable Quick Navigation?

The Visual Assist C++ extension makes it easy to navigate through the code, the entire project or solution. It contains tools that allow you to find any file, method, symbol, or reference. Search results, as well as available actions, are displayed in a convenient window or drop-down list.

You can also quickly jump to method implementation or declaration, and dependencies.
The C++ extension allows you to create hashtags in comments that are common and available to all solutions, as well as jump to hashtag links.

What about Easy Refactoring via C++ Extension?

Visual Assist allows you to automate the process of refactoring your code to simplify it and improve readability and extensibility.
Let’s list the main actions that are available to you.

  • Renaming classes, methods, parameters, fields, variables, and all references to them.
  • Moving the implementation to the header or source class.
  • Moving a segment of code to a new method or file.
  • Converting a pointer object to a reference object and vice versa.
  • Change the signature of a method, including its name, return type, visibility, parameters count, type, and names.

When you change any part of the code, related parts are changed automatically and do not affect the logic of the program.

Can it help with Fast Code Generation?

Our C++ extension allows you to significantly speed up the process of developing programs by automatically generating a large amount of code. You can add missing include directives by selecting just one item from the drop-down menu. It is also possible to create methods or other class members only by editing (if necessary) the autogenerated signature. You can automatically create method implementation, generate documentation, and use a lot of other features that Visual Assist provides.

Is there C++ Coding Assistance available in the extension?

Write code faster with assistance, which allows you to automatically complete code and fix errors. Print the class name and get a list of all its available members. Write only part of the name or its abbreviation and our C++ extension will offer you a list of available names.

Visual Assist provides you with smart suggestions to complete your code depending on the context. There is also the possibility of automatic insertion of special characters, smart code selection, and other useful features.

Can it help with more Understandable Code?

For quick reading and a better understanding of the code, you can choose colors for highlighting the text that is convenient for you. The C++ extension highlights search results in all text editors and output windows throughout the solution. Words that are the same as the selected word are also highlighted.

You can view the list of parameters of methods and functions, and get their description, including system methods and 3-rd party libraries. Bold and italic fonts are used to highlight local and overridden objects, respectively.

Is there a Code Inspector?

The C++ extension allows you to check the code for quality problems. It diagnoses and fixes common programming errors such as style violations, interface misuse, and bugs that can be detected using static analysis. Visual Assist offers an option to fix the code, and also automatically fixes it after you agree.

What about Code Snippets?

Another way to speed up the process of writing code is to use code snippets. Visual Assist C++ extension makes it easy to insert commonly used code snippets or surround selected code with them. There is also a built-in snippet editor that makes it easy to create, edit, and use snippets.

Is there a Tool Windows?

Use the advanced Windows tools provided by the Visual Assist C++ extension to easily understand and manage your code. You can conveniently browse, move, and edit the contents of classes and methods. Using the convenient Visual Assist View, you can navigate through the code, search for the file or symbol you need, and view information about selected files and objects.

Does it offer C++ Source Links in the extension?

The C++ extension allows you to connect comment substrings to external applications and websites such as bug trackers, case managers, documentation, and source code control systems. It is also possible to customize the content of tooltips. You can set the default File-Viewer plugin to preview files specified in the comments. Previewable formats include HTML, XAML, RTF, JPG, PNG, and other text and image formats.

Is there an easy Configuration of the extension?

For greater productivity, the Visual Assist C++ extension offers advanced options for customizing your programming environment to suit your interests and habits. The configuration includes settings for the context menu, mouse clicks, hotkeys, platform settings, and others.

Ready to get started boosting your productivity with this C++ extension?

We briefly reviewed the main reasons why you should use the Visual Assist C++ extension if you are developing programs in Visual Studio C++, as well as the main benefits that you get from doing so. Download the trial version of the Visual Assist C++ extension and test it in your production environment.

The post The Best Kept Secrets About C++ Extensions first appeared on Tomato Soup.

]]>
https://www.wholetomato.com/blog/the-best-kept-secrets-about-c-extensions/feed/ 0 2307