/// <summary> /// ClearError事件 /// </summary> /// <returns>ClearError響應</returns> public ExpUpdate ClearError() { Feature CurrentFeature = Feature.CLEAR_ERROR; return(ThrowOrderException <ExpUpdate>(CurrentFeature, () => { ExpUpdate expUpdate = NumberMachine.ClearError(); //執行成功時記錄下這次的Cast PreviousFeature = Feature.CLEAR_ERROR; return expUpdate; })); }
/// <summary> /// 返回事件 /// </summary> /// <returns>返回響應</returns> public ExpUpdate BackSpace() { Feature CurrentFeature = Feature.BACKSPACE; return(ThrowOrderException <ExpUpdate>(CurrentFeature, () => { ExpUpdate expUpdate = NumberMachine.BackSpace(); //執行成功時記錄下這次的Cast PreviousFeature = Feature.BACKSPACE; return expUpdate; })); }
/// <summary> /// Feature:BackSpace。輸入返回鍵 /// </summary> /// <returns>FrameObject</returns> public FrameObject BackSpace() { return(CatchException(() => { ExpUpdate expUpdate = OrderingChecker.BackSpace(); //完整運算式的刷新 CompleteExpression = expUpdate.Refresh(CompleteExpression); //panel, subpanel設定。 FrameObject.SubPanel = CompleteExpression; FrameObject.Panel = expUpdate.Refresh(FrameObject.Panel); return FrameObject; })); }
/// <summary> /// Feature:LeftBracket。輸入左括號 /// </summary> /// <returns>FrameObject</returns> public FrameObject LeftBracket() { return(CatchException(() => { ExpUpdate expUpdate = OrderingChecker.LeftBracket(); //完整運算式的刷新 CompleteExpression = expUpdate.Refresh(CompleteExpression); //panel, subpanel設定。subpanel強制給0 FrameObject.SubPanel = CompleteExpression; FrameObject.Panel = "0"; return FrameObject; })); }
/// <summary> /// 左括號事件 /// </summary> /// <returns>ExpUpdate</returns> public ExpUpdate LeftBracket() { Feature CurrentFeature = Feature.LEFT_BRACKET; return(ThrowOrderException <ExpUpdate>(CurrentFeature, () => { ExpUpdate expUpdate = NumberMachine.LeftBracket(); if (PreviousFeature == Feature.EQUAL) { expUpdate.RemoveLength = ExpUpdate.REMOVE_ALL; } //執行成功時記錄下這次的Cast PreviousFeature = Feature.LEFT_BRACKET; return expUpdate; })); }