Guest User

Untitled

a guest
Dec 24th, 2015
297
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 4.47 KB | None | 0 0
  1.     Private Sub AddUndoRedoItem(ByVal command As UndoRedoCommand, ByVal [event] As UndoRedoTextBoxEvent,
  2.                                 ByVal data As Object, ByVal lastData As Object)
  3.  
  4.         Console.WriteLine()
  5.         Console.WriteLine("command:" & command.ToString)
  6.         Console.WriteLine("last command:" & lastCommand.ToString)
  7.         Console.WriteLine("can undo:" & Me.CanUndo)
  8.         Console.WriteLine("can redo:" & Me.CanRedo)
  9.         Console.WriteLine("is undoing:" & Me.isUndoingB)
  10.         Console.WriteLine("is redoing:" & Me.isRedoingB)
  11.         Console.WriteLine("data:" & data.ToString)
  12.         Console.WriteLine("last data:" & lastData.ToString)
  13.  
  14.         ' MsgBox(command.ToString)
  15.         Dim undoRedoData As Object = Nothing
  16.         Me.lastCommand = command
  17.  
  18.         Select Case command
  19.  
  20.             Case UndoRedoCommand.Undo
  21.  
  22.                 ' If (Me.lastCommand = UndoRedoCommand.Redo) Then
  23.                 '  MsgBox("")
  24.                 '  End If
  25.  
  26.                 If (Me.isUndoingB) Then
  27.                     Exit Select
  28.                 End If
  29.  
  30.                 If (Me.CanRedo) AndAlso (Me.IsRedoing) Then
  31.  
  32.                     '  Exit Select
  33.                 End If
  34.  
  35.  
  36.  
  37.                 'If (Me.CanUndo) AndAlso (Me.CanRedo) AndAlso Not (Me.IsRedoing) Then
  38.  
  39.                 '    Dim redoItem As KeyValuePair(Of UndoRedoTextBoxEvent, Object) = Me.redoStack.Peek
  40.  
  41.                 '    If (redoItem.Key = [event]) AndAlso (Me.undoStack.Peek.Value.Equals(lastData)) Then
  42.                 '        MsgBox("undo1")
  43.                 '        Me.redoStack.Clear()
  44.                 '        Exit Sub
  45.                 '    End If
  46.  
  47.                 'End If
  48.  
  49.                 'Select Case (Me.CanRedo)
  50.                 '    Case True
  51.                 '        If (Me.redoStack.Peek.Key = [event]) Then
  52.  
  53.                 '            If (Me.CanUndo) AndAlso (Me.redoStack.Peek.Value.Equals(Me.undoStack.Peek.Value)) Then
  54.                 '                Me.undoStack.Clear()
  55.                 '                undoRedoData = Me.redoStack.Peek.Value
  56.  
  57.                 '            Else
  58.                 '                undoRedoData = lastData
  59.  
  60.                 '            End If
  61.  
  62.                 '        End If
  63.  
  64.                 '    Case Else
  65.                 ' MsgBox("")
  66.                 undoRedoData = lastData
  67.  
  68.                 'End Select
  69.  
  70.                 Me.undoStack.Push(New KeyValuePair(Of UndoRedoTextBoxEvent, Object)([event], undoRedoData))
  71.  
  72.             Case UndoRedoCommand.Redo
  73.  
  74.                 If (Me.isRedoingB) Then
  75.                     Exit Select
  76.                 End If
  77.  
  78.  
  79.                 If (Me.CanRedo) AndAlso (Me.CanUndo) AndAlso (Me.IsUndoing) Then
  80.  
  81.                     Dim undoItem As KeyValuePair(Of UndoRedoTextBoxEvent, Object) = Me.undoStack.Peek
  82.  
  83.                     If (undoItem.Key = [event]) AndAlso (undoItem.Value.Equals(lastData)) Then
  84.                         ' MsgBox("h")
  85.                         'Me.undoStack.Push(New KeyValuePair(Of UndoRedoTextBoxEvent, Object)([event], undoItem.Value))
  86.                         ' Me.redoStack.Clear()
  87.                         'Exit Sub
  88.                     End If
  89.                 End If
  90.  
  91.  
  92.  
  93.                 'If (Me.CanRedo) AndAlso (Me.CanUndo) AndAlso Not (Me.IsUndoing) Then
  94.  
  95.                 '    Dim undoItem As KeyValuePair(Of UndoRedoTextBoxEvent, Object) = Me.undoStack.Peek
  96.  
  97.                 '    If (undoItem.Key = [event]) AndAlso Not (undoItem.Value.Equals(data)) Then
  98.                 '        Me.undoStack.Push(New KeyValuePair(Of UndoRedoTextBoxEvent, Object)([event], undoItem.Value))
  99.                 '        Me.redoStack.Clear()
  100.                 '        Exit Sub
  101.                 '    End If
  102.  
  103.                 'End If
  104.  
  105.                 'Select Case (Me.CanUndo)
  106.  
  107.                 '    Case True
  108.  
  109.                 '        If (Me.undoStack.Peek.Key = [event]) Then
  110.  
  111.                 '            If (Me.CanRedo) AndAlso Not (Me.undoStack.Peek.Value.Equals(data)) Then
  112.                 '                undoRedoData = data
  113.  
  114.                 '            Else
  115.                 '                Me.redoStack.Clear()
  116.                 '                undoRedoData = data
  117.  
  118.                 '            End If
  119.  
  120.                 '        End If
  121.  
  122.                 '    Case Else
  123.                 undoRedoData = lastData
  124.  
  125.                 'End Select
  126.  
  127.                 Me.redoStack.Push(New KeyValuePair(Of UndoRedoTextBoxEvent, Object)([event], undoRedoData))
  128.  
  129.         End Select
  130.  
  131.     End Sub
Advertisement
Add Comment
Please, Sign In to add comment