dev@32: import {Component, OnInit} from '@angular/core'; dev@236: import {AudioPlayerService} from '../services/audio-player/audio-player.service'; dev@21: dev@21: @Component({ dev@236: selector: 'ugly-playback-control', dev@21: templateUrl: './playback-control.component.html', dev@21: styleUrls: ['./playback-control.component.css'] dev@21: }) dev@21: export class PlaybackControlComponent implements OnInit { dev@21: dev@225: constructor(private audioService: AudioPlayerService) { dev@32: } dev@21: dev@47: ngOnInit() {} dev@21: dev@32: emitPlayPause() { dev@32: this.audioService.togglePlaying(); dev@32: } dev@32: dev@32: emitFastForward() { dev@32: this.audioService.seekBy(5); // TODO this should probably be some dynamic amount based on the zoom level ala Sonic Visualiser dev@32: } dev@32: dev@32: emitFastForwardEnd() { dev@32: this.audioService.seekToEnd(); dev@32: } dev@32: dev@32: emitFastRewind() { dev@32: this.audioService.seekBy(-5); dev@32: } dev@32: dev@32: emitFastRewindStart() { dev@32: this.audioService.seekToStart(); dev@32: } dev@32: dev@32: emitVolumeChanged(value: number) { dev@32: this.audioService.setVolume(value); dev@32: } dev@32: dev@32: dev@32: // TODO seems wrong to be repeating myself dev@32: isPlaying(): boolean { dev@32: return this.audioService.isPlaying(); dev@32: } dev@21: }