How to track "Jumps Elsewhere" actions?


#1

I am stuck on version 6.6.2 pro for reasons I won’t get into, so hopefully someone has had this problem, too.

Is there a way to keep track of which canvases Jumps Elsewhere actions jump to? I want to be able to create a link back to each referring canvas from the target canvas.

If this is possible in v.7 pro, let me know that and maybe I can get an upgrade approved ;-)

Thanks!


#2

If I understand what you are looking for correctly, the action tool which looks like a hand pointing will show which objects have an action on hover, or you can choose View -> Actions to show the badge all of the time. If you click with the action tool, it will execute the action (take you to the specified canvas). When you select the object with the badge, the Action Inspector in Properties will show the canvas preview and which canvas it jumps to without taking you there. This is the same in Version 6.6 Pro and in Version 7 Pro.

If what you want instead was a list of every Action including which objects jump to which canvas in one place, that doesn’t exist currently. I think it would be cool feature to be able to show/hide a list of total actions on graphics. Email us from Contact Omni under help if you want us to record a feature request to add something that doesn’t exist in the current functionality.

Thanks,
Lanette


#3

Thank you, Lanette. I’ll send a feature request email as you suggested, but I’ll clarify here in case someone else has a workaround.

Basically, if I have 10 objects that all link to the same canvas, I want to see which canvases contain those objects (in case there are more than one on a canvas), so I can create a “return” object for each one. Currently, the only way to create these return links is to do them when you create the referring link. But this feature would allow me to be on the page the 10 objects are pointing to and see those objects and the canvases on which they reside.

Or, put a shorter way, if I’m on a canvas, I want to know what objects or canvases link to that canvas.

If anyone knows of a way to do that, I’m all ears.

Thanks!


#4

Using AppleScript you should be able to find objects with actions on each canvas, follow the action, and add the return link. If you have even dozens of documents, it might be worth writing a script if you need to create hundreds of these.

From the context menu, you can Copy As -> AppleScript in OmniGraffle 6.6 pro, which will show you how the canvas jumps are written.

I might start by getting all of the canvases in the front document, then for each canvas, get all objects with canvas jumps. Once you have all of the graphics with jumps, you can create return objects on each canvas. I script using JavaScript which Version 6 doesn’t support, or I’d send a better code example.

Here’s an example of how to create an object with a canvas jump in AppleScript.

tell application id "com.omnigroup.OmniGraffle6"
	tell canvas of front window
		make new shape at end of graphics with properties {draws shadow:false, size:{144.0, 74.25}, text:{size:16, alignment:center, font:"HelveticaNeue", text:"To Canvas 3"}, origin:{288.0, 60.75}}
		set jump of graphic -1 of it to canvas id 3 of document of front window of application id "com.omnigroup.OmniGraffle6"
	end tell
end tell

Hopefully an example and the ability Copy As AppleScript can help you put this together. If you get stuck, our support humans may have some tips to help.

Thanks,
Lanette


#5

Thank you, Lanette! I am not great at Apple Script, but will give it a shot and report back when I’ve had a chance to test it.