public override void OnMouseEvent(MouseEvent mouseEvent) { TPoint currentOffset = mouseEvent.Info.position - mouseEvent.PreviousPosition; switch ( mouseEvent.State ) { case MouseEvent.EventState.Move: { Move(currentOffset, m_controls); m_offset += currentOffset; } break; case MouseEvent.EventState.LUp: { Move(-m_offset,m_controls); m_offset += currentOffset; ICommand command = new MoveControl(m_controls, m_offset); m_commandManager.CurrentCommand = command; m_commandManager.Execute(); m_stateManager.ChangeState( StateType.Idle ); } break; } }
public ICommand Clone() { ICommand command = new MoveControl(m_controls, m_offset); return command; }