lib/vedeu/cursors/cursor.rb in vedeu-0.6.27 vs lib/vedeu/cursors/cursor.rb in vedeu-0.6.28
- old
+ new
@@ -80,48 +80,63 @@
end
alias_method :==, :eql?
# Moves the cursor down by one row.
#
+ # Vedeu.trigger(:_cursor_down_, name)
+ # Vedeu.trigger(:_cursor_down_, Vedeu.focus)
+ #
# @return [Vedeu::Cursors::Cursor]
def move_down
@oy += 1
Vedeu::Cursors::Cursor.store(
new_attributes(coordinate.y_position, x, oy, ox))
end
# Moves the cursor left by one column.
#
+ # Vedeu.trigger(:_cursor_left_, name)
+ # Vedeu.trigger(:_cursor_left_, Vedeu.focus)
+ #
# @return [Vedeu::Cursors::Cursor]
def move_left
@ox -= 1
Vedeu::Cursors::Cursor.store(
new_attributes(y, coordinate.x_position, oy, ox))
end
# Moves the cursor to the top left of the named interface.
#
+ # Vedeu.trigger(:_cursor_origin_, name)
+ # Vedeu.trigger(:_cursor_origin_, Vedeu.focus)
+ #
# @return [Vedeu::Cursors::Cursor]
def move_origin
Vedeu::Cursors::Cursor.store(
attributes.merge!(x: bx, y: by, ox: 0, oy: 0))
end
# Moves the cursor right by one column.
#
+ # Vedeu.trigger(:_cursor_right_, name)
+ # Vedeu.trigger(:_cursor_right_, Vedeu.focus)
+ #
# @return [Vedeu::Cursors::Cursor]
def move_right
@ox += 1
Vedeu::Cursors::Cursor.store(
new_attributes(y, coordinate.x_position, oy, ox))
end
# Moves the cursor up by one row.
#
+ # Vedeu.trigger(:_cursor_up_, name)
+ # Vedeu.trigger(:_cursor_up_, Vedeu.focus)
+ #
# @return [Vedeu::Cursors::Cursor]
def move_up
@oy -= 1
Vedeu::Cursors::Cursor.store(
@@ -148,10 +163,15 @@
Vedeu::Cursors::Cursor.store(
new_attributes(coordinate.y_position, coordinate.x_position, oy, ox))
end
+ # @return [Array<Fixnum>]
+ def to_a
+ position.to_a
+ end
+
# Returns an escape sequence to position the cursor and set its
# visibility. When passed a block, will position the cursor,
# yield and return the original position.
#
# @return [String]
@@ -164,11 +184,14 @@
# Hide a named cursor, or without a name, the cursor of the
# currently focussed interface.
#
# @example
+ # Vedeu.trigger(:_hide_cursor_, name)
+ # Vedeu.trigger(:_hide_cursor_, Vedeu.focus)
# Vedeu.hide_cursor(name)
+ # Vedeu.hide_cursor(Vedeu.focus)
#
# @return [Vedeu::Models::Escape]
def hide
super
@@ -196,10 +219,13 @@
# Show a named cursor, or without a name, the cursor of the
# currently focussed interface.
#
# @example
+ # Vedeu.trigger(:_show_cursor_, name)
+ # Vedeu.trigger(:_show_cursor_, Vedeu.focus)
# Vedeu.show_cursor(name)
+ # Vedeu.show_cursor(Vedeu.focus)
#
# @return [Vedeu::Models::Escape]
def show
super