Book a Demo

Author Topic: Finding the interface  (Read 4168 times)

mylesr

  • EA User
  • **
  • Posts: 26
  • Karma: +0/-0
  • Howdy!!
    • View Profile
Finding the interface
« on: June 09, 2008, 11:31:59 am »
When working with a very large system, I find the "Locate Related Object" feature to be very useful.  This is accessed by opening the Properties of the class, clicking on the "Links" tab, right-clicking on the related class and choosing "Locate Related Object" from the pop-up menu.  This finds and selects the related object in the Project Browser.  

For some reason, though, if the class implements an interface, the interface doesn't show up in the list of links.  This leaves me with the Project Browser's search function, which finds every place that the interface is used.  There can be hundreds of places where the interface is used, so this isn't very practical.  Why don't interfaces show up in the Links?  Is there an easy way to find the interface?  

By the way, I tried using the Hierarchy Viewer.  Realizations don't seem to show up there either (and, yes, it is selected in the Hierarchy Viewer's relationship types to display).  Any suggestions?  Is this a bug?

I'm using EA version 7.1.830.
« Last Edit: June 09, 2008, 11:45:22 am by mylesr »

Frank Horn

  • EA User
  • **
  • Posts: 535
  • Karma: +1/-0
    • View Profile
Re: Finding the interface
« Reply #1 on: June 09, 2008, 04:38:12 pm »
Just tried it out, and it all seems to work. Couldn't reproduce the bug.

Do you have version control involved (e.g. the interface being in a another controlled package than the class)? Or did you import packages from xmi (one containing the interface and another containing the class)?

mylesr

  • EA User
  • **
  • Posts: 26
  • Karma: +0/-0
  • Howdy!!
    • View Profile
Re: Finding the interface
« Reply #2 on: June 10, 2008, 05:02:18 am »
Thanks for trying it out, Frank.  After seeing that it worked for you, I did some more digging.  I found the Delphi source file where the interface is created and tried importing it all by itself.  I got an error saying that there was an unexpected ":" when it was parsing the file.  The line in question looks like this:

property Strict: Boolean read GetStrict;

I asked a local Delphi guru and discovered that "Strict" became a reserved word in Delphi 2005.  The code I'm looking at is Delphi 6, an older version in which "Strict" is not a reserved word.  The above property named Strict threw the parser off and so the interface was not created in EA.  

So... Is there a way to tell EA to parse according to an earlier version of Delphi (in which Strict is not a reserved word)?

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Finding the interface
« Reply #3 on: June 10, 2008, 08:22:52 am »
There's not currently, but I would suggest that you send in a support request to sparx systems.  We may be able to find a solution.