Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
User name:
Password:
Save Password
Forgot your password?

 All Forums
 Visual Assist
 Technical Support
 Find References F4 Intermittent
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

sjaffe
Ketchup Master

USA
60 Posts

Posted - Nov 15 2006 :  4:19:21 PM  Show Profile  Reply with Quote
VAX 1540 in eVC 4.0: After running the Find References command I see the references listed in a window. I would like to "visit" all the references (jump to the references in the source files where they occur). I am using F4 (mapped to GoToNextErrorTag). Sometimes it works, more often it does not. I have yet to find any cause and effect of why it works sometimes but not others. It's a nice feature (when it works ;^) Why the intermittence?

sean
Whole Tomato Software

USA
2817 Posts

Posted - Nov 15 2006 :  7:42:45 PM  Show Profile  Reply with Quote
The evc4/vc6 integration of the results window is a bit of hack if you haven't noticed; navigation via GoToNextErrorTag and GoToPreviousErrorTag requires some text in the IDE output window like from a build (aborted or otherwise). see Navigation at http://www.wholetomato.com/products/features/findReferences.asp
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19021 Posts

Posted - Nov 16 2006 :  08:30:19 AM  Show Profile  Reply with Quote
You can try mapping a keyboard shortcut to VAssistX.FindReferencesResults.
When Find References Results appears it remembers the last item you jumped to, so you can simply use the up or down arrow keys to move to the next or previous item.

Not quite the same, but being able to scan down the list and select the item you want to jump to is very useful.

zen is the art of being at one with the two'ness
Go to Top of Page

sjaffe
Ketchup Master

USA
60 Posts

Posted - Dec 05 2006 :  1:00:04 PM  Show Profile  Reply with Quote
I've found a way to get it to start working again once it stops. If I do a "Find in Files" I get output (search results) under the Find in Files 1 tab. F4 then jumps to each item in the list. If I then switch to the Find References window using VAssistXFindReferencesResults, F4 will now work correctly with this list of references. Note there was text in the Build window at all times during this test.

To get the problem to happen consistently, I found this sequence:

1. Start up eVC
2. Load a file to edit
3. Run Find References on an item in the file
4. (F4 will not work, yes I know there is no text in the build window)
5. Run Find in Files
6. (F4 will sequence through the Find in Files list)
7. Switch to the Find References window using VAssistXFindReferencesResults
8. F4 will now sequence through the Find References window

Thanks, Stan

Art is the zen of being one too

Stan
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19021 Posts

Posted - Dec 06 2006 :  08:28:32 AM  Show Profile  Reply with Quote
Interesting. I think this is the same effect as having text in the output window. Notice that F4 steps through the results from Find in Files.

zen is the art of being at one with the two'ness
Go to Top of Page

sjaffe
Ketchup Master

USA
60 Posts

Posted - Dec 06 2006 :  11:09:52 AM  Show Profile  Reply with Quote
It may be related, but the interesting part is just having text in the Find in Files output window is not sufficient to get F4 working in the Find References window. You must first use F4 in the Find in Files window before it will work in Find References.

Art is the zen of being one too

Stan
Go to Top of Page

sjaffe
Ketchup Master

USA
60 Posts

Posted - Jan 11 2007 :  1:42:48 PM  Show Profile  Reply with Quote
Here is a way to get the problem to happen (VAX 1543):

1. Start up eVC (file had previously been loaded into editor)
2. Do a build
3. Run Find References on an item in the file
4. (F4 works correctly)
5. Add a blank line to the file (file was read-only, now checked out and writable)
6. (F4 now does nothing)
7. Run Find in Files
8. Run Find References
9. (F4 works correctly now)
10. Revert file (undo checkout from within eVC)
11. (F4 now does nothing)
12. Run Find References
13. (F4 now does nothing)
14. Run Find in Files, then Find References
15. (F4 working)
16. Check file out from outside eVC
17. (F4 still working)
18. Add blank line to file
19. (F4 working)
20. Update source control status within eVC
21. (F4 working)
22. Undo checkout from within eVC
23. (F4 now does not work)

It is very consistent/repeatable. It appears that after a file is either checked out or has Undo Checkout run from within eVC, F4 no longer works for Find References. Running Find in Files will get it working again.

I would really appreciate if this was working correctly. It seems to be related to the source control status changing from within eVC. I can try different scenarios for you if that will help.

Thanks,
Stan

Edited by - sjaffe on Jan 11 2007 1:45:13 PM
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19021 Posts

Posted - Jan 18 2007 :  09:56:41 AM  Show Profile  Reply with Quote
Looking at this I believe you are seeing something of an IDE "bug" or "feature", depending on how you want to look at it.

Using my test project I did a compile, which produced a single error. At this point F4 jumps to this error. So I am using the IDE's F4 handling on the output window, with nothing at all to do with VA or Find References.

I then did a Perforce source control operation. Specifically I selected "undo check out" via right clicking on a file in FileView. As a result the "Source Control" tab jumped to the front.



At this point F4 does "nothing". To be exact it beeps, but that is effectively nothing for our purposes. If I change tabs to "Build" then F4 works, it jumps to the build error. Change tabs back to "Source Control" and F4 beeps.

Looking over your description I seem to be seeing exactly the same effect as you.

F4 to move through VA's Find References Results "cheats" by picking up the IDE's F4 command on the output / build window and then using it to scan through Find References Results instead. Since the IDE its self is not responding to F4 there is not going to be anything for VA to respond to if I had Find References Results to the fore.

This is an unfortunate limitation of EVC++4 and VC6, VA is not free to just do what it wants, it has to work within the limitations set by the IDE.

If you bind a keyboard shortcut to "VAssistX.FindReferencesResults" then does this help? This should place focus in the Find References Results window, with the last item you jumped to selected. You can now use the arrow keys and Enter to select and then jump to the next item of interest.

zen is the art of being at one with the two'ness
Go to Top of Page

sjaffe
Ketchup Master

USA
60 Posts

Posted - Jan 18 2007 :  10:50:18 AM  Show Profile  Reply with Quote
Thanks for your explanation. It now makes sense what is happening. You mention VA picks up the IDE's F4 command on the output/build window. The problem is when some other tab is active. I assume it is not possible to intercept the F4 command from the source control tab as well? If that were possible, it seems this problem would go away.

I do have a key binding for the FindReferenceResults, so I can easily toggle between the Find References window and the build window. This is a convenient binding (and I previously found that right here in the forum ;^) I am using ctrl-2 to invoke ActivateOutputWindow. Do you know if there is a way to select which tab is active? The original problem appears because the tab is switch away from either build or Find in Files to Source Control. If after I check out or revert a file (and the output window tab switches to Source Control) I could switch the tab back using a key binding, that would make things a little easier (I like keyboarding over mouse clicks when possible).

Art is the zen of being one too

Stan
Go to Top of Page

sean
Whole Tomato Software

USA
2817 Posts

Posted - Jan 18 2007 :  11:39:00 AM  Show Profile  Reply with Quote
While I don't know of a keybinding to pick a particular tab in the output window, ctrl+page up/down will switch between them.
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000