code: public static IVdmStackFrame getEvaluationContext(IWorkbenchPart part)
  	{
  		IWorkbenchPage page = part.getSite().getPage();
  		IVdmStackFrame frame = getContext(page);
  		if (frame == null)
  		{
  			return getEvaluationContext(page.getWorkbenchWindow());
  		}
  		return frame;
  	}
docs: Returns the evaluation context for the given part, or <code>null</code> if none. The evaluation context
  corresponds to the selected stack frame in the following priority order:
  <ol>
  <li>stack frame in the same page</li>
  <li>stack frame in the same window</li>
  <li>stack frame in active page of other window</li>
  <li>stack frame in page of other windows</li>
  </ol>
  
  @param part
  the part that the evaluation action was invoked from
  @return the stack frame that supplies an evaluation context, or <code>null</code> if none