class UndoRedo

Auteur:: Brabant Mano
Version:: 0.1
Date:: 09/04/2020

Cette classe représente une structure de donnée permettant de faire des undo et des redo

Public Class Methods

creer() click to toggle source

Ce constructeur permet de créer une nouvelle undoRedo

# File Core/UndoRedo.rb, line 17
def UndoRedo.creer()
  new()
end

Public Instance Methods

clear() click to toggle source

Cette méthode permet de vider la undoRedo

# File Core/UndoRedo.rb, line 84
def clear()

  @actions.clear()
  @indice = 0
  @nbElement = 0
  return self

end
empiler(element) click to toggle source

Cette méthode permet de d'empiler un élément

param
  • element L'élément à empiler

# File Core/UndoRedo.rb, line 34
def empiler(element)

  @actions.insert(@indice, element)
  @indice += 1
  @nbElement = @indice
  return self

end
empty?() click to toggle source

Cette méthode permet de savoir si la undoRedo est vide

return
  • true Si la undoRedo est vide

  • false Sinon

# File Core/UndoRedo.rb, line 78
def empty?()
  return @actions.empty?()
end
redo() click to toggle source

Cette méthode permet de recupérer l'élément du dernier undo (de remonter dans la undoRedo)

return
  • L'élément du dernier undo

# File Core/UndoRedo.rb, line 62
def redo()

  if(@indice >= @nbElement)
    raise("Vous etes au bout de la undoRedo")
  else
    @indice += 1
    return @actions.at(@indice - 1)
  end

end
undo() click to toggle source

Cette méthode permet de recupérer l'élément d'avant (de descendre dans la undoRedo)

return
  • L'élément d'avant

# File Core/UndoRedo.rb, line 47
def undo()

  if(@indice <= 0)
    raise("La undoRedo est vide")
  else
    @indice -= 1
    return @actions.at(@indice)
  end

end