September 2008 Archives

I was walking down to the kitchen to get my afternoon cookie and I met another of our engineers. He asked “hey, how would I use Understand to clean up a class of functions that are no longer used?”. I thought for a bit and said “piece of cake”.

In short…. use the entity filter window to filter on “unused functions”, turn entity->long names on, then type in the name of the class. Done. 

Here are the steps….  First select the “Unused Functions” filter in the Entity Filter window:

2008-09-30 16.36

26 Sep 2008

Highlights

  • Add option for read only projects.
  • Add Architecture Dependency Graph
  • Enabled Metric Graphs in Understand. Users will be able to create project metric graphs for any available architecture and snapshot.

(Build b463) - 19 Sep 2008

Highlights: In this build we’ve added bookmarks, a new butterfly graph, support for Visual Studio 2005 C# Projects, and many new keyboard bindings.

We are busy internationalizing important messages in Understand 2.0 so that they can be translated into Japanese. This involves a lot of changes that are identical. For instance, all translatable strings have to be turned into functions that go through a translation function “tr()” that will table lookup the string to the corresponding Japanese translation.

So take for instance this section of code:

procedure Buffer_Demo is
   EOL  : Character renames ASCII.LF;
   Text : constant String
     := "Four score and seven years ago our fathers brought forth," & EOL &
        "upon this continent, a new nation, conceived in liberty," & EOL &
        "and dedicated to the proposition that `all men are created equal'.";

I’ve got to make it look like this:

procedure Buffer_Demo is
   EOL  : Character renames ASCII.LF;
   Text : constant String
     := tr("Four score and seven years ago our fathers brought forth,") & EOL &
        tr("upon this continent, a new nation, conceived in liberty,") & EOL &
        tr("and dedicated to the proposition that `all men are created equal'.");

Fortunately, Understand 2.0 can record editor macros that make repeated tasks easy and possibly fun.

Here is how…

Understand 2.0 Favorites lets you organize locations (file/line#) or entities (e.g function foo, file foo.cpp) into a named folders.

Favorites can be “project favorites”, where they are only applicable to the .udb file open when you made them, or “all project favorites”, which are available no matter what project you have loaded.  The “All Projects” variety is useful to me since I have dozens of projects of largely the same source that I use for different testing/evaluation purposes.

Favorites are shown in the “Favorites” window, which you can show by clicking on the 2008-09-18 13.55 toolbar (or by Windows->Favorites).

I have my favorites organized into three folders:

2008-09-18 13.56

I give a lot of web and in-person demos of Understand, “Good Demos” is where I store classes, functions, and files that help me simply explain the kinds of things Understand does. For instance, here I have classes and functions and a “butterfly” view with the [x] Sync box checked. In a demo, I can just click on the favorite and see the graph update auto-magically.

2008-09-18 14.04

“Interfaces” provides a handy spot to stash a quick way to see the API’s we often work against here. For instance, the “Understand database API (udb)” or “Change API”.  If I need to know the UDB API details, I just click on it and up comes the source:

2008-09-18 14.07

“ToDo” stores places I want to take a peek at again later. Often this is when I find a spot, or a user reports a spot, where a  crash or bug can be replicated.  It is empty now, but let’s pretend I want to come back and look at a spot here in the UDB interface.

First I just click in the editor where I want to remember. Then pull down the Favorites toolbar menu:

2008-09-18 14.09

It asks me to place the favorite, and I specify “All Projects” and put it inside “ToDo”:

2008-09-18 14.10

It is now in my Favorites and I can visit it just by double clicking on it:

14 2008-09-18 14.11

Our most frequently asked support question goes something like this: “I see the graphs on your website, but how do I get them in Understand?”.  With Understand 1.4 the only way to get a call tree other other graphical view was to right click on the function and choose “Graphical Views->Call Tree”.  That is totally obvious to some new users and to others a huge mystery. And that is understandable. Not everybody has used applications with right click context menus.

Understand 2.0 keeps the context menus, but also adds a new Graph Toolbar:

2008-09-18 11.08

This toolbar item updates whenever you click on an entity anywhere in source or any of Understand’s graphical or other informational views.

To get a graph, just pull down the menu:

2008-09-18 11.11

and the graph will pop right up.

CIMG0555_small_

New! Butterfly Graphs

| | Comments (1) | TrackBacks (0)

Our hierarchy charts have always shown one relationship, for instance “Call”, on a chart. We’ve just introduced “Butterfly” charts, which will show two relationships that are the inverse of each other. For instance, “Call and CallBy”, “Include and Include By”, “Derived and Derived By”.

For instance, here is a butterfly chart for a function (click on it to see it bigger):

2008-09-08 14.34

The function queried was “add_data_in_datablock”. Note that it is in the middle, with calls it makes to the right, and those it is called-by to the left.

These graphs are available for every entity that we have hierarchical graphs for.

 

We just added this toolbar section to the Understand 2.0 toolbar:

2008-09-08 14.11

It controls workspace splitting. Here are some examples. Click on them to see them bigger.

Single document view workspace:

2008-09-08 14.17

Split workspace – horizontal & vertical

2008-09-08 14.18  2008-09-08 14.20 

(Build b462) - 03 Sep 2008

Several bug and crash fixes. Notably fixing a severe licensing issue during the evaluation.

About this Archive

This page is an archive of entries from September 2008 listed from newest to oldest.

August 2008 is the previous archive.

October 2008 is the next archive.

Find recent content on the main index or look in the archives to find all content.