Moved SongHandler

This commit is contained in:
2015-07-09 16:48:42 +02:00
parent da934f7111
commit fc21037006
11 changed files with 12 additions and 13 deletions
-131
View File
@@ -1,131 +0,0 @@
package model;
import java.io.File;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import main.Window;
import audio.AudioPlayer;
import audio.Song;
import audio.SongInstance;
import audio.io.DirScanner;
import audio.sorting.SortPLAYED;
import data.io.SQLConnector;
public class SongHandler {
private List<Song> songs;
private Song currentSong;
private SongInstance currentSongInstance;
private int currentIndex;
SQLConnector sql;
private File dir;
private AudioPlayer p;
public SongHandler(SQLConnector sql)
{
this.sql = sql;
songs = new ArrayList<Song>();
currentSong = null;
currentSongInstance = null;
currentIndex = 0;
p = new AudioPlayer();
if(Window.ON_ARCADE)
dir = new File(System.getProperty( "user.home" ) + "/ColorStrike/Songs/");
else
dir = new File(System.getProperty( "user.home" ) + "/Documents/songs/");
songs = DirScanner.scanDirectories(dir);
sql.update(songs);
sort(new SortPLAYED());
updatePlayer();
}
public void next()
{
currentIndex++;
updatePlayer();
}
public void previous()
{
currentIndex--;
updatePlayer();
}
public void set(int i)
{
currentIndex = i;
updatePlayer();
}
public void set(SongInstance si)
{
currentSongInstance = si;
}
public boolean isPlaying(){
return getProgress() > 0 ? true : false;
}
private void updatePlayer()
{
if(currentIndex < 0)
currentIndex = songs.size() + currentIndex;
if(currentIndex >= songs.size())
currentIndex = currentIndex - songs.size();
currentSong = songs.get(currentIndex);
currentSongInstance = currentSong.getSongs().get(0);
p.close();
p.setClip(currentSong);
}
public long getProgress()
{
return p.getProgress();
}
public List<Song> getSongs()
{
return songs;
}
public Song getCurrentSong()
{
return currentSong;
}
public SongInstance getCurrentSongInstance()
{
return currentSongInstance;
}
public void close()
{
p.close();
for(Song s : songs)
{
s.close();
}
}
public void play()
{
p.play();
}
public void sort(Comparator<Song> sorter)
{
Collections.sort(songs, sorter);
}
}
+1 -1
View File
@@ -12,13 +12,13 @@ import java.awt.image.VolatileImage;
import java.io.IOException;
import model.GameModel;
import model.SongHandler;
import model.objects.InfoPanel;
import model.objects.highscore.HighscoreName;
import com.google.zxing.WriterException;
import control.GameStateManager;
import control.SongHandler;
import control.GameStateManager.State;
import control.button.ButtonEvent;
import control.button.ButtonHandler;
+1 -1
View File
@@ -2,8 +2,8 @@ package model.gameState;
import java.awt.Graphics2D;
import model.SongHandler;
import control.GameStateManager;
import control.SongHandler;
import control.button.ButtonEvent;
import control.joystick.JoystickEvent;
import data.io.SQLConnector;
+1 -1
View File
@@ -11,8 +11,8 @@ import java.awt.image.BufferedImage;
import java.awt.image.VolatileImage;
import model.GameModel;
import model.SongHandler;
import control.GameStateManager;
import control.SongHandler;
import control.GameStateManager.State;
import control.button.ButtonEvent;
import control.button.ButtonHandler;
+1 -1
View File
@@ -17,7 +17,6 @@ import java.util.ArrayList;
import java.util.List;
import model.GameModel;
import model.SongHandler;
import model.objects.DifficultyButton;
import model.objects.MenuButton;
import model.objects.highscore.Highscore;
@@ -28,6 +27,7 @@ import audio.sorting.SortAUTHOR;
import audio.sorting.SortPLAYED;
import audio.sorting.SortSCORE;
import control.GameStateManager;
import control.SongHandler;
import control.GameStateManager.State;
import control.button.ButtonEvent;
import control.button.ButtonHandler;
+1 -1
View File
@@ -7,7 +7,6 @@ import java.awt.Stroke;
import java.awt.geom.Rectangle2D;
import java.util.Iterator;
import model.SongHandler;
import model.drawObjects.Enemy;
import model.drawObjects.Player;
import model.objects.InfoPanel;
@@ -17,6 +16,7 @@ import model.objects.highscore.Highscore;
import audio.ButtonInstance;
import audio.ObjectInstance;
import control.GameStateManager;
import control.SongHandler;
import control.GameStateManager.State;
import control.button.Button;
import control.button.ButtonEvent;
+1 -1
View File
@@ -8,8 +8,8 @@ import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import model.SongHandler;
import control.GameStateManager;
import control.SongHandler;
import control.button.ButtonEvent;
import control.joystick.JoystickEvent;
import data.io.SQLConnector;
+1 -1
View File
@@ -12,8 +12,8 @@ import java.awt.Transparency;
import java.awt.image.BufferedImage;
import java.awt.image.VolatileImage;
import model.SongHandler;
import control.GameStateManager;
import control.SongHandler;
import control.GameStateManager.State;
import control.button.ButtonEvent;
import control.joystick.JoystickEvent;
+1 -1
View File
@@ -11,9 +11,9 @@ import java.awt.Transparency;
import java.awt.geom.Ellipse2D;
import java.awt.image.VolatileImage;
import control.SongHandler;
import control.button.ButtonHandler;
import main.Window;
import model.SongHandler;
import model.gameState.PlayState;
public class InfoPanel {