class Soundcloud9000::Views::PlayerView
draws and manages the top section of sc9000, the player
Attributes
player[RW]
Public Class Methods
new(*attrs)
click to toggle source
Calls superclass method
Soundcloud9000::UI::View::new
# File lib/soundcloud9000/views/player_view.rb, line 11 def initialize(*attrs) super @spectrum = true padding 2 end
Public Instance Methods
toggle_spectrum()
click to toggle source
# File lib/soundcloud9000/views/player_view.rb, line 18 def toggle_spectrum @spectrum = !@spectrum end
Protected Instance Methods
download_progress()
click to toggle source
# File lib/soundcloud9000/views/player_view.rb, line 41 def download_progress progress = @player.download_progress - @player.play_progress if progress > 0 '.' * (progress * body_width).ceil else '' end end
draw()
click to toggle source
# File lib/soundcloud9000/views/player_view.rb, line 24 def draw line progress + download_progress with_color(:green) do line((duration + ' - ' + status).ljust(16) + @player.title) end line track_info line '>' * (@player.level.to_f * body_width).ceil end
duration()
click to toggle source
# File lib/soundcloud9000/views/player_view.rb, line 59 def duration TimeHelper.duration(@player.seconds_played.to_i * 1000) end
progress()
click to toggle source
# File lib/soundcloud9000/views/player_view.rb, line 37 def progress '#' * (@player.play_progress * body_width).ceil end
status()
click to toggle source
# File lib/soundcloud9000/views/player_view.rb, line 33 def status (@player.playing? ? 'playing' : 'paused') end
track()
click to toggle source
# File lib/soundcloud9000/views/player_view.rb, line 51 def track @player.track end
track_info()
click to toggle source
# File lib/soundcloud9000/views/player_view.rb, line 55 def track_info "#{track.likes} Likes | #{track.comments} Comments | #{track.url}" end