private void VerifyCursorContext(IMixedRealityCursor cursor, CursorContextEnum context) { var baseCursor = cursor as BaseCursor; Assert.IsNotNull(baseCursor); Assert.AreEqual(context, baseCursor.CursorContext); }
/// <summary> /// Internal update to check for cursor state changes /// </summary> private void UpdateCursorState() { CursorStateEnum newState = CheckCursorState(); if (CursorState != newState) { OnCursorStateChange(newState); } CursorContextEnum newContext = CheckCursorContext(); if (CursorContext != newContext) { OnCursorContextChange(newContext); } }
/// <summary> /// Override OnCursorContext change to set the correct animation state for the cursor. /// </summary> /// <param name="context"></param> public override void OnCursorContextChange(CursorContextEnum context) { base.OnCursorContextChange(context); if (context == CursorContextEnum.Contextual) { return; } for (int i = 0; i < cursorContextData.Length; i++) { if (cursorContextData[i].CursorState == context) { SetAnimatorParameter(cursorContextData[i].Parameter); } } }
private void VerifyCursorContextFromPointers(IEnumerable <IMixedRealityPointer> pointers, CursorContextEnum context) { Assert.NotZero(pointers.ToReadOnlyCollection().Count); foreach (var pointer in pointers) { VerifyCursorContext(pointer.BaseCursor, context); } }
/// <summary> /// Change the cursor context state to the new context. Override in cursor implementations. /// </summary> /// <param name="context"></param> public virtual void OnCursorContextChange(CursorContextEnum context) { CursorContext = context; }