Posted by & filed under Tips.

Sometimes you ‘inherit’ code that may not be as “pretty” as you would like it, but taking the time to fix these little things could be very time consuming. Understand helps with a ‘reindent’ option and a ‘sort’ option.

messyFunctionHere you can see that these lines are not lined up like most of us would like.

The quick fix is to highlight the text and select ‘Reindent Selection’.

reindent

 

The results are quick with a correctly indented piece of code.   goodFunction

 

 

Sometimes we just want a little organization and want things to be alphabetized. Highlight the text, right click and select ‘Sort Selection’ in the context menu.

sortSelection

 

The result is an alphabetized list that can make the pickiest person happy.

notSorted     sorted

 

 

 

Posted by & filed under Tips.

Having customized work space can be essential in improving work flow. Going beyond selecting what windows to show, Understand provides the flexibility to “release windows” and place them  where they will work the best for you! The possibilities are endless, but here are a few examples.

releasedual2     releasedual1

 

 

Above is a “dual screen” version and below is a single screen version.

releasedscreen

To use the “released windows”, click on the icon at the top right.     releaseWindows

 

 

To release the editor windows, right click on the file name and select ‘Release Window’ in the Context Menu.

 

releaseFile

 

 

If you decide that the “released windows” is not for you, but “putting it all back” may be time consuming, there is an option under ‘Window->Predefined Windows Layouts’ to get you back quickly.

Have fun and enjoy your new work space!

 

 

 

 

Posted by & filed under Build Notes.

(Build b768) – 27 Feb 2015

ADA PARSER

  • Fixed bug with the 'Create and cross reference record object components' option where named associations used in record aggregate assignments were resulting in references to the type components instead of the object components.

C++ PARSER

  • Better handle extensionless include files that are automatically added to the project.

GRAPHS

  • Fixed tab activation issue when opening graph windows with the option to sort tabs alphabetically enabled.

JAVA PARSER

  • Fixed syntax errors on extra trailing semicolons on package and import statements.

STRICT PARSER

  • Disable aarch64 as a target architecture.

  • Added missing define references to lambda expression parameters.

Posted by & filed under Tips.

Sometimes we just want to see multiple things at once, and our editor window allows for just that!

Clicking the icon in the top right corner of the editor window provides a “split” window feature that

allows you to see the same file multiple times.
multiple

Each different section can be scrolled individually and the height can be changed if you

need to see more of one section than another.

multiple2
Now it gets even more cool… using the icons at the top select the icon to ‘split vertically’.
split
Now you can see the source file and the companion header file that goes with it. Since the source file is quite long I still want to see different areas of the same file, so I remember to use the horizontal split that we just discussed.

splits

Giving me a very custom view of exactly what I want to see!

Posted by & filed under Tips.

Have you ever wanted to highlight an entity and then highlight a different entity but not lose the highlighting on the first? With the ‘Toggle Persistent Highlight’ key binding option that has recently been added to Understand, up to 4 different entities can be highlighted at the same time.

image1

To use this feature, go to Tools->Options->Key Bindings and Search By Name for ‘highlight’. Assign a Primary Sequence to the ‘Toggle Persistent Highlight binding and Apply. Then, in the editor, highlight an entity, use the binding and it will highlight all entities that color. To apply the next highlight, repeat the steps and the next color isused. To remove one of the highlights, select a highlighted entity and use the key binding again. To remove all of the highlighted entities at one time, assign a Key Binding to the ‘Clear Persistent Highlights’ binding in Tools->Options->Key Bindings.

image2

 

Posted by & filed under Tips.

Whether you just started a new job, inherited someone else’s project, or just have a lot of code to navigate, Understand has a lot of features to help you figure out a new or confusing project.

Dependency Graphs

These graphs provide a quick way of seeing how the major code directories are related to each other. In this case I can easily see that the directories “common” and “ri” are important and used by almost everything. The dependency graph lets you drill down to the class and function level and filter out things you aren’t interested in, making it a great tool for exploring.

ArchInternalDependencies-DirectoryStructure

UML Class Diagram

A quick way to see how the different classes in the project are related.

umldiagram

 

Flowchart Graphs

Complicated functions can make more sense when you can walk though the control flow logic visually.

graph_views_control_flow_c

Information Browser

Imagine browsing the source for a function and running across an unfamiliar variable, what is it, where was it defined, is it global or local? The Info Browser was made to answer questions like that. While not as pretty as the graphs, the Information Browser (IB) is probably the most powerful feature of Understand.It displays almost everything Understand knows about the selected entity: the initial value, relationships to other entities, everywhere it is referenced, sub-entities, basic metrics, etc. Just right click and select View Information on just about anything.

InfoBrowser

 

Contextual Information Sidebar

The Contextual Information Sidebar(CIS) updates dynamically based on where focus is in the editor, showing pertinent information about the surrounding structures and entities. It provides a quick heads-up display to provide context on whatever you are looking at.

Context Information Sidebar

 

Browse Mode

If you’re exploring more than writing code, browse mode can save you a few mouse clicks, it changes entity names in the editor to hyperlinks that update the Info Browser and jump to the definition of the clicked entity.

browse mode

 

Annotations

As you make sense of the code, you may want to make notes on what you’ve learned. Annotations lets you make notes on entities without modifying the source code. You can choose to share those notes with others on your team or keep them private. Annotations are displayed inline with the code as well as in the Info Browser. That can also be displayed as a list and searched so you can quickly find the the right note.

annotations

There are many other features in Understand that may prove helpful in your situation, for a more detailed feature overview see this video.

You can grab a fully functional eval version of Understand and get started now!

Posted by & filed under Plugins, Tips.

User Andrzej has shared his User Tools for performing Version Control operations in Understand. Similar to our posts on using SVN and CVS commands in Understand.

To install just go to Tools->User Tools->Import

Thanks Andzej!

Download

Posted by & filed under Announcements.

We finished our official testing this morning and are happy to announce support for Windows 8.1. Our testing was done with Understand 3.1 build 694 – however earlier builds of Understand will probably work just fine.

Posted by & filed under Release.

With build 642 we’ve added an awesome new feature called Background Parse. It is designed to let you get right to work on your project as soon as Understand opens, instead of needing to wait for the parse. Right away you’ll have access to the Project Browser and Editor windows, and as soon as the parse is finished, everything else will be available.

Other features added since the release of Understand 3.0:

Added build system monitoring with buildspy
Added support for Windows 8
Improved project building capability
Improved Visio Export
Added ability to annotate code