// void UnitTest2 () { Originator theOriginator = new Originator(); Caretaker theCaretaker = new Caretaker(); // 設定資訊 theOriginator.SetInfo( "Version1" ); theOriginator.ShowInfo(); // 保存 theCaretaker.AddMemento("1",theOriginator.CreateMemento()); // 設定資訊 theOriginator.SetInfo( "Version2" ); theOriginator.ShowInfo(); // 保存 theCaretaker.AddMemento("2",theOriginator.CreateMemento()); // 設定資訊 theOriginator.SetInfo( "Version3" ); theOriginator.ShowInfo(); // 保存 theCaretaker.AddMemento("3",theOriginator.CreateMemento()); // 退回到第2版, theOriginator.SetMemento( theCaretaker.GetMemento("2")); theOriginator.ShowInfo(); // 退回到第1版, theOriginator.SetMemento( theCaretaker.GetMemento("1")); theOriginator.ShowInfo(); }
// Entry point into console application. static void Main() { Originator o = new Originator("On"); // o.State = "On"; // Store Originator's internal state within Memento inside Caretaker Caretaker c = new Caretaker(o.CreateMemento()); // c.Memento = o.CreateMemento(); // Change Originator's state o.State = "Off"; // Restore Originator's previously saved state o.SetMemento(c.Memento); // Change Originator's state again o.State = "Off"; // Store Originator's internal state within Memento inside Caretaker c = new Caretaker(o.CreateMemento()); // Change Originator's state o.State = "On"; // Restore Originator's previously saved state o.SetMemento(c.Memento); // Wait for user Console.ReadKey(); }
public static void Test() { var s = new Originator { State = "state 1" }; var m = new Caretaker(); m.Memento = s.SaveMemento(); s.State = "state 2"; s.RestoreMemento(m.Memento); }
static void Main() { Originator originator = new Originator(); originator.State = "On"; // Store internal state Caretaker c = new Caretaker(); c.Memento = originator.CreateMemento(); // Continue changing originator originator.State = "Off"; // Restore saved state originator.SetMemento(c.Memento); }
public static void EX1() { CareTaker careTaker = new CareTaker(); Originator objeto = new Originator(); objeto.SetState("estado original"); objeto.ShowState(); careTaker.AddStep(new Memento.Exemplo1.Memento(objeto.SaveState())); objeto.SetState("mutação de estado 1"); objeto.SetState("mutação de estado 2"); objeto.RestoreState(careTaker.GetLastStep()); objeto.ShowState(); }
static void Main(string[] args) { Originator originator = new Originator(); originator.State = "On"; originator.Show(); Caretaker caretaker = new Caretaker(); caretaker.Memento = originator.CreateMemento(); originator.State = "Off"; originator.Show(); originator.SetMemento(caretaker.Memento); originator.Show(); }
private void Start() { Originator o = new Originator(); o.State = "On"; // Store internal state Caretaker c = new Caretaker(); c.Memento = o.CreateMemento(); // Continue changing originator o.State = "Off"; // Restore saved state o.SetMemento(c.Memento); }
public static void Main( string[] args ) { Originator o = new Originator(); o.State = "On"; // Store internal state Caretaker c = new Caretaker(); c.Memento = o.CreateMemento(); // Continue changing originator o.State = "Off"; // Restore saved state o.SetMemento( c.Memento ); Console.Read(); }
public void Start() { Originator o = new Originator(); o.Data = new IData("版本1"); o.Show(); Craretaker craretaker = new Craretaker(); craretaker.AddMemento("版本1", o.CreateMemento()); o.Data.Data = "版本2"; o.Show(); o.SetData(craretaker.GetMemento("版本1").Data); o.Show(); //回到版本1 }
public ISerializedRecord Serialize(SerializeMethod method, string[] accountFields, string[] recordFields) { var record = new SerializedRecord(); record.TransCode = BankValidation.TransCode[this.TransCode]; record.Amount = Amount.Format(method, 11, 2); record.Reference = Reference.Format(method, 18); record.Originator = Originator.Serialize(method, accountFields); record.Destination = Destination.Serialize(method, accountFields); record.Line = Sugar.ComposeLine <SerializedRecord>(method, recordFields, record); return(record); }
Caretaker BabySitter; //memento pattern caretaker void Start() { Ship = new PlainShip(); Origin = new Originator(); //-- Initialize buttons, listeners, and the perk items, perk toggle states, set onscreen toggles to false InitializeButtons(); InitializeButtonListeners(); InitializePerkListItems(); InitilizeStates(); SetTogglesFalse(); //-- Set the Originator's states to the current states read from file, create a memento of these states if user wishes to undo Origin.State = (GenerateStateString()); BabySitter = new Caretaker(); BabySitter.Memento = Origin.CreateMemento(); }
public void Memento_Pattern_Test() { var originator = new Originator("super-super-super-super"); var caretaker = new Caretaker(originator); var obj1 = caretaker.Backup(); Assert.AreEqual("super-super-super-super", obj1.GetState()); originator.DoSomething(); var obj2 = caretaker.Backup(); Assert.AreNotEqual("super-super-super-super", obj2.GetState()); var obj3 = caretaker.Undo(); Assert.AreEqual("super-super-super-super", obj3.GetState()); }
public void Test1() { Originator ori = new Originator(); Assert.AreEqual(0, ori.Current.Y); Assert.AreEqual(0, ori.Current.X); IMemento <Position> m1 = ori.Memento; ori.IncreaseY(); ori.DecreaseX(); Assert.AreEqual(1, ori.Current.Y); Assert.AreEqual(-1, ori.Current.X); ori.Memento = m1; Assert.AreEqual(0, ori.Current.Y); Assert.AreEqual(0, ori.Current.X); }
static void Main17() { Console.WriteLine("Hello Memento Pattern!"); var u486 = new Originator(); var admin = new Caretaker(); Console.WriteLine("------------------486 Welcome to the Yijie----------------------"); admin.SetMemento(u486.CreateMemento()); u486.Time = 100; Console.WriteLine("------------------486 death----------------------"); u486.ResetMemento(admin.GetMemento()); Console.WriteLine("-------------------New start-----------------------"); Console.WriteLine("486 time changed to:" + u486.Time); Console.ReadLine(); }
static void Main(string[] args) { Originator o = new Originator(); o.State = "On"; o.Show(); Caretaker c = new Caretaker(); c.Memento = o.CreateMemento(); o.State = "Off"; o.Show(); o.SetMemento(c.Memento); o.Show(); Console.ReadKey(); }
/// <summary> /// Entry point into console application. /// </summary> static void Demo() { Originator o = new Originator(); o.State = "On"; // Store internal state Caretaker c = new Caretaker(); c.Memento = o.CreateMemento(); // Continue changing originator o.State = "Off"; // Restore saved state o.SetMemento(c.Memento); // Wait for user Console.ReadKey(); }
public void Test() { var originator = new Originator(); // 保存发起者刚初始化后的状态 originator.SaveCheckpoint(); // 对发起者进行操作,验证状态的修改 originator.IncreaseY(); originator.DecreaseX(); Assert.AreEqual <int>(-1, originator.Current.X); Assert.AreEqual <int>(1, originator.Current.Y); // 确认备忘录的恢复作用 originator.Undo(); Assert.AreEqual <int>(0, originator.Current.Y); Assert.AreEqual <int>(0, originator.Current.X); }
public void ShouldHaveDataLockRestartAndPendingUpdateAnd_AllShouldBeSelected(Originator updateFrom, Originator caller) { _data.Add(new Apprenticeship { PendingUpdateOriginator = updateFrom, DataLockCourseTriaged = true }); _userQuery.RecordStatuses = new EditableList <RecordStatus> { RecordStatus.ChangeRequested, RecordStatus.ChangesForReview, RecordStatus.ChangesPending }; var result = _sut.BuildFacets(_data, _userQuery, caller); result.RecordStatuses.Any(m => m.Selected && m.Data == RecordStatus.ChangesPending).Should().BeTrue(); result.RecordStatuses.Any(m => m.Selected && m.Data == RecordStatus.ChangeRequested).Should().BeTrue(); result.RecordStatuses.Any(m => m.Selected && m.Data == RecordStatus.ChangesForReview).Should().BeFalse(); AssertStatuses(result, RecordStatus.ChangesPending, 1); AssertStatuses(result, RecordStatus.ChangeRequested, 1); }
public HttpResponseMessage AdicionarUsuarioOnline(AutenticationRequest objUser) { Originator objOriginator = new Originator(); /*var ordenant = Business.Usuario.ObtenerOrdenantePorCedulaCOEASY(objUser.strIdUser , objUser.DocumentType, objUser.strIdUser); * * if (ordenant != null) * objOriginator.NameOrd = ordenant.Nombre; * * //------------------------------------------------------------------------------------------------------------------------ * //Guarda el usuario que se conecta en la tabla usuarios. * AutenticationUserController.Instance.AdicionarUsuarioOnline(objUser.strIdUser, ordenant.Nombre, objUser.Token); * //------------------------------------------------------------------------------------------------------------------------ */ var response = Request.CreateResponse <Originator>(HttpStatusCode.OK, objOriginator); return(response); }
public void MementoTest_1() { Originator originator = new Originator(); Caretaker caretaker = new Caretaker(); List <TextBox> list = new List <TextBox>(); for (int i = 1; i < 5; i++) { TextBox textBox = new TextBox(); textBox.Text = i.ToString(); list.Add(textBox); } originator.SetTextBoxValues(list); caretaker.Memento = originator.SaveMemento(); list[0].Text = "10"; originator.SetTextBoxValues(list); Assert.AreEqual(10, originator.TextBoxValues[0]); }
/// <summary> /// 测试备忘录模式 /// </summary> static void TestMementoState() { Originator o = new Originator(); o.State = "On"; o.Show(); Caretaker c = new Caretaker(); c.Memento = o.CreateMemento(); o.State = "Off"; o.Show(); o.SetMemento(c.Memento); o.Show(); }
public void Test() { var careTaker = new CareTaker <MyData>(); var originator = new Originator <MyData>(); originator.State = new MyData { Value = 2 }; careTaker.SaveState(originator.CreateMemento()); originator.State = new MyData { Value = 6 }; careTaker.SaveState(originator.CreateMemento()); Assert.Equal(6, originator.State.Value); originator.SetMemento(careTaker.Get(0)); Assert.Equal(2, originator.State.Value); }
public string Update(int id, string name, string description) { string msg; try { Originator model = service.GetById(id); model.Name = name; model.Description = description; model.ChangedBy = User.Identity.GetUserId(); service.Update(model); msg = "Saved Successfully"; } catch (Exception ex) { msg = "Error occured:" + ex.Message; } return(msg); }
private void Start() { CareTaker careTaker = new CareTaker(); Originator originator = new Originator(); originator.SetState("State1"); originator.ShowState(); careTaker.AddMemento("v1.0", originator.CreateMemento()); originator.SetState("State2"); originator.ShowState(); careTaker.AddMemento("v2.0", originator.CreateMemento()); Memento memento = careTaker.GetMemento("v1.0"); originator.SetMemento(memento); originator.ShowState(); }
public void Main() { Originator originator = new Originator(); CareTaker careTaker = new CareTaker(); originator.SetState("State #1"); originator.SetState("State #2"); careTaker.Add(originator.SaveStateToMemento()); originator.SetState("State #3"); careTaker.Add(originator.SaveStateToMemento()); originator.SetState("State #4"); Console.WriteLine("Current State: " + originator.GetState()); originator.GetStateFromMemento(careTaker.Get(0)); Console.WriteLine("First saved State: " + originator.GetState()); originator.GetStateFromMemento(careTaker.Get(1)); Console.WriteLine("Second saved State: " + originator.GetState()); }
// void UnitTest() { Originator theOriginator = new Originator(); // 设定信息 theOriginator.SetInfo("Step1"); theOriginator.ShowInfo(); // 储存状态 Memento theMemnto = theOriginator.CreateMemento(); // 设定新的信息 theOriginator.SetInfo("Step2"); theOriginator.ShowInfo(); // 复原 theOriginator.SetMemento(theMemnto); theOriginator.ShowInfo(); }
/// <summary> /// 备忘录模式 /// </summary> public static void MementoPattern() { var originator = new Originator(new Student { Id = 10, Name = "张三" }); Console.WriteLine($"现在学生的名称是:{originator.GetStudentName()}"); var caretaker = new Caretaker(); caretaker.student = originator.CreateStudent(); Console.WriteLine($"备份对象:Id:{caretaker.student.Id},Name:{caretaker.student.Name}"); originator.RemoveStudent(); Console.WriteLine($"移除对象"); Console.WriteLine($"当前学生的名称是:{originator.GetStudentName()}"); originator.RestoreStudent(caretaker.student); Console.WriteLine($"还原之后学生的名称是:{originator.GetStudentName()}"); }
public HttpResponseMessage LogInUserFromPlay(AutenticationRequest objUser) { string IpAddress = GetIpClient(); // objUser.strIdUser = _TokenServices.GetToken(objUser.Token); Originator objOriginator = new Originator();// AutenticationUserController.Instance.AutenticationUser(objUser.strIdUser, "", IpAddress, false, true, objUser.Disclaimer,"",false); var response = Request.CreateResponse <Originator>(HttpStatusCode.OK, objOriginator); response.Headers.Add("Token", ""); response.Headers.Add("TokenExpiry", ConfigurationManager.AppSettings["AuthTokenExpiry"]); response.Headers.Add("Access-Control-Expose-Headers", "Token,TokenExpiry"); return(response); }
public void MementoUsage() { Originator o = new Originator(); o.State = "On"; // Store internal state Caretaker c = new Caretaker(); c.Memento = o.CreateMemento(); // Continue changing originator o.State = "Off"; // Restore saved state o.SetMemento(c.Memento); Assert.IsTrue(true); }
public static Originator MapOriginatorFromProto(ProtoOriginator messageOriginator) { if (messageOriginator == null) { return(null); } var obj = new Originator( messageOriginator.Name, messageOriginator.Vaan, MapPostalAddressFromProto(messageOriginator.PostalAddress), MapPlaceOfBirthFromProto(messageOriginator.PlaceOfBirth), messageOriginator.NaturalPersonId?.Select(x => MapNaturalPersonIdFromProto(x))?.ToArray(), messageOriginator.JuridicalPersonId?.Select(x => MapJuridicalPersonIdFromProto(x))?.ToArray(), messageOriginator.Bic ); return(obj); }
public static void MementoPattern() { Originator o = new Originator(); o.State = "On"; o.Show(); Caretaker c = new Caretaker(); c.Memento = o.CreateMemento(); o.State = "Off"; o.Show(); o.SetMemento(c.Memento); o.Show(); Console.Read(); }
public void ShouldFilterApprenticeshipStatusSelectedAllButOneSelected(Originator caller) { var query = new ApprenticeshipSearchQuery { ApprenticeshipStatuses = new List <ApprenticeshipStatus>( new[] { ApprenticeshipStatus.Live, ApprenticeshipStatus.Finished, ApprenticeshipStatus.Paused, ApprenticeshipStatus.Stopped }) }; var result = _sut.Filter(_apprenticeships, query, caller); result.PageOfResults.Count.Should().Be(1); result.PageOfResults.Single().FirstName.Should().Be("Live"); }
// void UnitTest() { Originator theOriginator = new Originator(); // 設定資訊 theOriginator.SetInfo("Step1"); theOriginator.ShowInfo(); // 儲存狀態 Memento theMemnto = theOriginator.CreateMemento(); // 設定新的資訊 theOriginator.SetInfo("Step2"); theOriginator.ShowInfo(); // 復原 theOriginator.SetMemento(theMemnto); theOriginator.ShowInfo(); }
/// <summary> /// Create a session and send a request session message to beneficiary Vasp. /// </summary> /// <param name="originator">Information about a client who sends a transfer</param> /// <param name="beneficiaryVaan">Information about a receiver of the transfer</param> /// <returns>OriginatorSession through which transfer request and transfer dispatch should be requested.</returns> public async Task <OriginatorSession> CreateSessionAsync( Originator originator, VirtualAssetsAccountNumber beneficiaryVaan, IOriginatorVaspCallbacks _originatorVaspCallbacks) { string counterPartyVaspContractAddress = await _ensProvider.GetContractAddressByVaspCodeAsync(beneficiaryVaan.VaspCode); var contractInfo = await _ethereumRpc.GetVaspContractInfoAync(counterPartyVaspContractAddress); var sessionKey = ECDH_Key.GenerateKey(); var sharedKey = sessionKey.GenerateSharedSecretHex(contractInfo.HandshakeKey); var session = new OriginatorSession( originator, this._vaspContractInfo, this.VaspInfo, beneficiaryVaan, contractInfo.SigningKey, contractInfo.HandshakeKey, sharedKey, sessionKey.PublicKey, this._signatureKey, _whisperRpc, _transportClient, _signService, _originatorVaspCallbacks); if (_originatorSessionsDict.TryAdd(session.SessionId, session)) { this.NotifySessionCreated(session); session.OnSessionTermination += this.ProcessSessionTermination; await session.StartAsync(); return(session); } await session.TerminateAsync(TerminationMessage.TerminationMessageCode .SessionClosedTransferCancelledByOriginator); //TODO: process it as exception or retry return(null); }
public void TestMemento() { Juego juego = new Juego(); juego.setProgress("10%"); juego.setCheckpoint(1); Caretaker caretaker = new Caretaker(); Originator originator = new Originator(); juego = new Juego(); juego.setProgress("40%"); juego.setCheckpoint(2); originator.setEstado(juego); juego = new Juego(); juego.setProgress("50%"); juego.setCheckpoint(3); originator.setEstado(juego); caretaker.addMemento(originator.guardar()); // ESTADO POSICION 0 juego = new Juego(); juego.setProgress("70%"); juego.setCheckpoint(4); originator.setEstado(juego); caretaker.addMemento(originator.guardar()); // ESTADO POSICION 1 juego = new Juego(); juego.setProgress("80%"); juego.setCheckpoint(5); originator.setEstado(juego); caretaker.addMemento(originator.guardar()); // ESTADO POSICION 2 originator.setEstado(juego); originator.restaurar(caretaker.getMemento(1)); juego = originator.getEstado(); Assert.AreEqual("Juego [Progreso=70%, checkpoint=4]", juego.toString()); }
/// <summary> /// Entry point into console application. /// </summary> static void Main() { Originator o = new Originator(); o.State = "On"; // Store internal state Caretaker c = new Caretaker(); c.Memento = o.CreateMemento(); // Continue changing originator o.State = "Off"; // Restore saved state o.SetMemento(c.Memento); // Wait for user Console.ReadKey(); }
// void UnitTest () { Originator theOriginator = new Originator(); // 設定資訊 theOriginator.SetInfo( "Step1" ); theOriginator.ShowInfo(); // 儲存狀態 Memento theMemnto = theOriginator.CreateMemento(); // 設定新的資訊 theOriginator.SetInfo( "Step2" ); theOriginator.ShowInfo(); // 復原 theOriginator.SetMemento( theMemnto ); theOriginator.ShowInfo(); }
private static void Main() { Originator<string> orig = new Originator<string>(); orig.SetState("state0"); Caretaker<string>.SaveState(orig); //save state of the originator orig.ShowState(); orig.SetState("state1"); Caretaker<string>.SaveState(orig); //save state of the originator orig.ShowState(); orig.SetState("state2"); Caretaker<string>.SaveState(orig); //save state of the originator orig.ShowState(); //restore state of the originator Caretaker<string>.RestoreState(orig, 0); orig.ShowState(); //shows state0 }
public void Main() { var o1 = new Originator(); o1.IncreaseY(); o1.SaveCheckpoint(1); o1.IncreaseY(); o1.SaveCheckpoint(2); var o2 = new Originator(); o2.UpdateX(3); o2.SaveCheckpoint(2); o1.Undo(1); Assert.AreEqual <int>(0, o1.Current.X); Assert.AreEqual <int>(1, o1.Current.Y); o2.Undo(2); Assert.AreEqual <int>(3, o2.Current.X); Assert.AreEqual <int>(0, o2.Current.Y); }
public void Main() { // References to the mementos var c = new Caretaker[10]; var originator = new Originator(); var move = 0; // Iterator for the moves var simulator = new Simulator(); foreach (string command in simulator) { // Check for undo if (command[0] == '*' && move > 0) originator.Restore(c[move - 1].Memento); else originator.Operation(command); move++; c[move] = new Caretaker(); c[move].Memento = originator.SetMemento(); } }
// Responsible for zooming in for all control schemes public void ZoomIn(Originator originator) { // First checks to see if we camera can zoom in if(panoCamera.fov > minZoomFov) { // Touch device zoom in if(originator == Originator.TouchDevice) { if(panoCamera.fov - (touchZoomSpeed * Time.deltaTime) >= minZoomFov) { panoCamera.fov = panoCamera.fov - (touchZoomSpeed * Time.deltaTime) ; } else { panoCamera.fov = minZoomFov ; } if(limitXRotation || limitYRotation) { AdjustRotationalLimitZoomIn() ; } } // Mouse zoom in else if(originator == Originator.Mouse) { if(panoCamera.fov - (mouseZoomSpeed * Time.deltaTime) >= minZoomFov) { panoCamera.fov = panoCamera.fov - (mouseZoomSpeed * Time.deltaTime) ; } else { panoCamera.fov = minZoomFov ; } if(limitXRotation || limitYRotation) { AdjustRotationalLimitZoomIn() ; } } else if(originator == Originator.Keyboard) { // Keyboard zoom in if(panoCamera.fov - ((keyboardZoomSpeed * Time.deltaTime)) >= minZoomFov) { panoCamera.fov = panoCamera.fov - ((keyboardZoomSpeed * Time.deltaTime)) ; } else { panoCamera.fov = minZoomFov ; } if(limitXRotation || limitYRotation) { AdjustRotationalLimitZoomIn() ; } } else if(originator == Originator.GuibuttonZoomIn) { // guibutton zoom in if(panoCamera.fov - ((keyboardZoomSpeed * Time.deltaTime)) >= minZoomFov) { panoCamera.fov = panoCamera.fov - ((keyboardZoomSpeed * Time.deltaTime)) ; } else { panoCamera.fov = minZoomFov ; } if(limitXRotation || limitYRotation) { AdjustRotationalLimitZoomIn() ; } } } }
public MainMementoProgram() { this.StateMemory = new List<Memento>(); this.OriginalObject = new Originator(); }
// Responsible for zooming out for all control schemes public void ZoomOut(Originator originator) { // First checks to see if we camera can zoom out if(panoCamera.fov < maxZoomFov) { // Touch zoom out if(originator == Originator.TouchDevice) { if(panoCamera.fov + (touchZoomSpeed * Time.deltaTime) <= maxZoomFov) { panoCamera.fov = panoCamera.fov + (touchZoomSpeed * Time.deltaTime) ; } else { panoCamera.fov = maxZoomFov ; } if(limitXRotation || limitYRotation) { AdjustRotationalLimitZoomOut(2.5f) ; } } // Mouse zoom out else if(originator == Originator.Mouse) { if(panoCamera.fov + (mouseZoomSpeed * Time.deltaTime) <= maxZoomFov) { panoCamera.fov = panoCamera.fov + (mouseZoomSpeed * Time.deltaTime) ; } else { panoCamera.fov = maxZoomFov ; } if(limitXRotation || limitYRotation) { AdjustRotationalLimitZoomOut(0.59f) ; } } else if(originator == Originator.Keyboard) { // Keyboard zoom out if(panoCamera.fov + ((keyboardZoomSpeed * Time.deltaTime)) <= maxZoomFov) { panoCamera.fov = panoCamera.fov + ((keyboardZoomSpeed * Time.deltaTime)) ; } else { panoCamera.fov = maxZoomFov ; } if(limitXRotation || limitYRotation) { AdjustRotationalLimitZoomOut(0.25f) ; } } else if(originator == Originator.GuibuttonZoomOut) { // guibutton zoom out if(panoCamera.fov + ((keyboardZoomSpeed * Time.deltaTime)) <= maxZoomFov) { panoCamera.fov = panoCamera.fov + ((keyboardZoomSpeed * Time.deltaTime)) ; } else { panoCamera.fov = maxZoomFov ; } if(limitXRotation || limitYRotation) { AdjustRotationalLimitZoomOut(0.25f) ; } } } }
// Responsible for panning for all control schemes public void Pan(Originator originator) { // panning if camera has horizontal rotational limit but not a vertical rotational limit if(limitXRotation == true && limitYRotation == false) { // mouse panning if(originator == Originator.Mouse) { if(!invertMouseHorizontal) { x = Mathf.Clamp(x + (Input.GetAxis("Mouse X") * Time.deltaTime * mousePanSpeed), maxLeftRotation, maxRightRotation) ; } else { x = Mathf.Clamp(x + (-Input.GetAxis("Mouse X") * Time.deltaTime * mousePanSpeed), maxLeftRotation, maxRightRotation) ; } if(!invertMouseVertical) { panoCamera.transform.Rotate((-Input.GetAxis("Mouse Y") * mousePanSpeed * Time.deltaTime), 0, 0); } else { panoCamera.transform.Rotate((Input.GetAxis("Mouse Y") * mousePanSpeed * Time.deltaTime), 0, 0); } panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle, 0 ); } // touch panning else if (originator == Originator.TouchDevice) { if(!invertTouchHorizontal) { x = Mathf.Clamp(x + (finger1.deltaPosition.x * Time.deltaTime * touchPanSpeed), maxLeftRotation, maxRightRotation) ; } else { x = Mathf.Clamp(x + (-finger1.deltaPosition.x * Time.deltaTime * touchPanSpeed), maxLeftRotation, maxRightRotation) ; } if(!invertTouchVertical) { panoCamera.transform.Rotate((-finger1.deltaPosition.y * touchPanSpeed * Time.deltaTime), 0, 0); } else { panoCamera.transform.Rotate((finger1.deltaPosition.y * touchPanSpeed * Time.deltaTime), 0, 0); } panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle, 0 ); } // keyboard panning else if (originator == Originator.Keyboard) { if(!invertKeyboardHorizontal) { x = Mathf.Clamp(x + (Input.GetAxis("Horizontal") * Time.deltaTime * keyboardPanSpeed), maxLeftRotation, maxRightRotation) ; } else { x = Mathf.Clamp(x + ((-1 * Input.GetAxis("Horizontal")) * Time.deltaTime * keyboardPanSpeed), maxLeftRotation, maxRightRotation) ; } if(!invertKeyboardVertical) { panoCamera.transform.Rotate(-Input.GetAxis("Vertical") * keyboardPanSpeed * Time.deltaTime, 0, 0) ; } else { panoCamera.transform.Rotate(Input.GetAxis("Vertical") * keyboardPanSpeed * Time.deltaTime, 0, 0) ; } panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle , 0 ); } // Guibutton panning else if (originator == Originator.GuibuttonLeft) { x = Mathf.Clamp(x + (-1 * Time.deltaTime * keyboardPanSpeed), maxLeftRotation, maxRightRotation) ; panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle , 0 ); } else if (originator == Originator.GuibuttonRight) { x = Mathf.Clamp(x + (1 * Time.deltaTime * keyboardPanSpeed), maxLeftRotation, maxRightRotation) ; panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle , 0 ); } else if (originator == Originator.GuibuttonUp) { panoCamera.transform.Rotate(1 * keyboardPanSpeed * Time.deltaTime, 0, 0) ; } else if (originator == Originator.GuibuttonDown) { panoCamera.transform.Rotate(-1 * keyboardPanSpeed * Time.deltaTime, 0, 0) ; } } // panning if camera has vertical rotational limit but not a horizontal rotational limit else if(limitYRotation == true && limitXRotation == false) { // mouse panning if(originator == Originator.Mouse) { if(!invertMouseVertical) { y = Mathf.Clamp(y + (Input.GetAxis("Mouse Y") * Time.deltaTime * mousePanSpeed), maxDownRotation, maxUpRotation) ; } else { y = Mathf.Clamp(y + (-Input.GetAxis("Mouse Y") * Time.deltaTime * mousePanSpeed), maxDownRotation, maxUpRotation) ; } panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); if(!invertMouseHorizontal) { panoCameraPivot.transform.Rotate(0, (Input.GetAxis("Mouse X") * mousePanSpeed * Time.deltaTime), 0); } else { panoCameraPivot.transform.Rotate(0, (-Input.GetAxis("Mouse X") * mousePanSpeed * Time.deltaTime), 0); } } // touch panning else if (originator == Originator.TouchDevice) { if(!invertTouchVertical) { y = Mathf.Clamp(y + (finger1.deltaPosition.y * Time.deltaTime * touchPanSpeed), maxDownRotation, maxUpRotation) ; } else { y = Mathf.Clamp(y + (-finger1.deltaPosition.y * Time.deltaTime * touchPanSpeed), maxDownRotation, maxUpRotation) ; } panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); if(!invertTouchHorizontal) { panoCameraPivot.transform.Rotate(0, (finger1.deltaPosition.x * touchPanSpeed * Time.deltaTime),0) ; } else { panoCameraPivot.transform.Rotate(0, (-finger1.deltaPosition.x * touchPanSpeed * Time.deltaTime),0) ; } } // keyboard panning else if (originator == Originator.Keyboard) { if(!invertKeyboardVertical) { y = Mathf.Clamp(y + (Input.GetAxis("Vertical") * Time.deltaTime * keyboardPanSpeed), maxDownRotation, maxUpRotation) ; } else { y = Mathf.Clamp(y + (-Input.GetAxis("Vertical") * Time.deltaTime * keyboardPanSpeed), maxDownRotation, maxUpRotation) ; } panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); if(!invertKeyboardHorizontal) { panoCameraPivot.transform.Rotate(0, Input.GetAxis("Horizontal") * keyboardPanSpeed * Time.deltaTime, 0) ; } else { panoCameraPivot.transform.Rotate(0, -Input.GetAxis("Horizontal") * keyboardPanSpeed * Time.deltaTime, 0) ; } } // Guibutton panning else if (originator == Originator.GuibuttonUp) { y = Mathf.Clamp(y + (1 * Time.deltaTime * keyboardPanSpeed), maxDownRotation, maxUpRotation) ; panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); } else if (originator == Originator.GuibuttonDown) { y = Mathf.Clamp(y + (-1 * Time.deltaTime * keyboardPanSpeed), maxDownRotation, maxUpRotation) ; panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); } else if (originator == Originator.GuibuttonLeft) { panoCameraPivot.transform.Rotate(0, -1 * keyboardPanSpeed * Time.deltaTime, 0) ; } else if (originator == Originator.GuibuttonRight) { panoCameraPivot.transform.Rotate(0, 1 * keyboardPanSpeed * Time.deltaTime, 0) ; } } // panning if camera has both horizontal rotational limit and a vertical rotational limit else if(limitYRotation == true && limitXRotation == true) { // mouse panning if(originator == Originator.Mouse) { if(!invertMouseHorizontal) { x = Mathf.Clamp(x + (Input.GetAxis("Mouse X") * Time.deltaTime * mousePanSpeed), maxLeftRotation, maxRightRotation) ; } else { x = Mathf.Clamp(x + (-Input.GetAxis("Mouse X") * Time.deltaTime * mousePanSpeed), maxLeftRotation, maxRightRotation) ; } if(!invertMouseVertical) { y = Mathf.Clamp(y + (Input.GetAxis("Mouse Y") * Time.deltaTime * mousePanSpeed), maxDownRotation, maxUpRotation) ; } else { y = Mathf.Clamp(y + (-Input.GetAxis("Mouse Y") * Time.deltaTime * mousePanSpeed), maxDownRotation, maxUpRotation) ; } panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle, 0 ); } // touch panning else if (originator == Originator.TouchDevice) { if(!invertTouchHorizontal) { x = Mathf.Clamp(x + (finger1.deltaPosition.x * Time.deltaTime * touchPanSpeed), maxLeftRotation, maxRightRotation) ; } else { x = Mathf.Clamp(x + (-finger1.deltaPosition.x * Time.deltaTime * touchPanSpeed), maxLeftRotation, maxRightRotation) ; } if(!invertTouchVertical) { y = Mathf.Clamp(y + (finger1.deltaPosition.y * Time.deltaTime * touchPanSpeed), maxDownRotation, maxUpRotation) ; } else { y = Mathf.Clamp(y + (-finger1.deltaPosition.y * Time.deltaTime * touchPanSpeed), maxDownRotation, maxUpRotation) ; } panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle, 0 ); } // keyboard panning else if (originator == Originator.Keyboard) { if(!invertKeyboardHorizontal) { x = Mathf.Clamp(x + (Input.GetAxis("Horizontal") * Time.deltaTime * keyboardPanSpeed), maxLeftRotation, maxRightRotation) ; } else { x = Mathf.Clamp(x + (-Input.GetAxis("Horizontal") * Time.deltaTime * keyboardPanSpeed), maxLeftRotation, maxRightRotation) ; } if(!invertKeyboardVertical) { y = Mathf.Clamp(y + (Input.GetAxis("Vertical") * Time.deltaTime * keyboardPanSpeed), maxDownRotation, maxUpRotation) ; } else { y = Mathf.Clamp(y + (-Input.GetAxis("Vertical") * Time.deltaTime * keyboardPanSpeed), maxDownRotation, maxUpRotation) ; } panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle, 0 ); } // Guibutton panning else if (originator == Originator.GuibuttonUp) { y = Mathf.Clamp(y + (1 * Time.deltaTime * keyboardPanSpeed), maxDownRotation, maxUpRotation) ; panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); } else if (originator == Originator.GuibuttonDown) { y = Mathf.Clamp(y + (-1 * Time.deltaTime * keyboardPanSpeed), maxDownRotation, maxUpRotation) ; panoCamera.transform.localRotation = Quaternion.Euler(-y, 0, 0 ); } else if (originator == Originator.GuibuttonLeft) { x = Mathf.Clamp(x + (-1 * Time.deltaTime * keyboardPanSpeed), maxLeftRotation, maxRightRotation) ; panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle, 0 ); } else if (originator == Originator.GuibuttonRight) { x = Mathf.Clamp(x + (1 * Time.deltaTime * keyboardPanSpeed), maxLeftRotation, maxRightRotation) ; panoCameraPivot.transform.rotation = Quaternion.Euler( 0, x + startingCameraAngle, 0 ); } } // if theres no rotational limits, pan freely else { // mouse panning if(originator == Originator.Mouse) { if(!invertMouseVertical) { panoCamera.transform.Rotate((-Input.GetAxis("Mouse Y") * mousePanSpeed * Time.deltaTime), 0, 0); } else { panoCamera.transform.Rotate((Input.GetAxis("Mouse Y") * mousePanSpeed * Time.deltaTime), 0, 0); } if(!invertMouseHorizontal) { panoCameraPivot.transform.Rotate(0, (Input.GetAxis("Mouse X") * mousePanSpeed * Time.deltaTime), 0); } else { panoCameraPivot.transform.Rotate(0, (-Input.GetAxis("Mouse X") * mousePanSpeed * Time.deltaTime), 0); } } // touch panning else if(originator == Originator.TouchDevice) { if(!invertTouchVertical) { panoCamera.transform.Rotate((-finger1.deltaPosition.y * touchPanSpeed * Time.deltaTime), 0, 0); } else { panoCamera.transform.Rotate((finger1.deltaPosition.y * touchPanSpeed * Time.deltaTime), 0, 0); } if(!invertTouchHorizontal) { panoCameraPivot.transform.Rotate(0, (finger1.deltaPosition.x * touchPanSpeed * Time.deltaTime),0) ; } else { panoCameraPivot.transform.Rotate(0, (-finger1.deltaPosition.x * touchPanSpeed * Time.deltaTime),0) ; } } // keyboard panning else if(originator == Originator.Keyboard) { if(!invertKeyboardVertical) { panoCamera.transform.Rotate(-Input.GetAxis("Vertical") * keyboardPanSpeed * Time.deltaTime, 0, 0) ; } else { panoCamera.transform.Rotate(Input.GetAxis("Vertical") * keyboardPanSpeed * Time.deltaTime, 0, 0) ; } if(!invertKeyboardHorizontal) { panoCameraPivot.transform.Rotate(0, Input.GetAxis("Horizontal") * keyboardPanSpeed * Time.deltaTime, 0) ; } else { panoCameraPivot.transform.Rotate(0, -Input.GetAxis("Horizontal") * keyboardPanSpeed * Time.deltaTime, 0) ; } } // Guibutton panning else if(originator == Originator.GuibuttonUp) { panoCamera.transform.Rotate(-1 * keyboardPanSpeed * Time.deltaTime, 0, 0) ; } else if(originator == Originator.GuibuttonDown) { panoCamera.transform.Rotate(1 * keyboardPanSpeed * Time.deltaTime, 0, 0) ; } else if(originator == Originator.GuibuttonLeft) { panoCameraPivot.transform.Rotate(0, -1 * keyboardPanSpeed * Time.deltaTime, 0) ; } else if(originator == Originator.GuibuttonRight) { panoCameraPivot.transform.Rotate(0, 1 * keyboardPanSpeed * Time.deltaTime, 0) ; } } }
public void RegisterOriginator(Originator newOriginator) { m_OriginatorList.Add (newOriginator); }
private void ShowAll(Originator eOriginator, Int64 nValue) { this._inShowAll = true; if (eOriginator != Originator.Bits) { this.ShowBits(nValue); } if (eOriginator != Originator.Dec) { this.ShowDecimal(nValue); } if (eOriginator != Originator.Hex) { this.ShowHexadecimal(nValue); } if (eOriginator != Originator.Bin) { this.ShowBinary(nValue); } this.ShowSource(nValue); this._inShowAll = false; }