diff --git a/.classpath b/.classpath
new file mode 100644
index 0000000..e83e9e5
--- /dev/null
+++ b/.classpath
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6b468b6
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+*.class
diff --git a/.project b/.project
new file mode 100644
index 0000000..9dc9998
--- /dev/null
+++ b/.project
@@ -0,0 +1,17 @@
+
+
+ MusicPlayer
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3a21537
--- /dev/null
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/artist.jpg b/artist.jpg
new file mode 100644
index 0000000..7d95252
Binary files /dev/null and b/artist.jpg differ
diff --git a/front.jpg b/front.jpg
new file mode 100644
index 0000000..1f9d588
Binary files /dev/null and b/front.jpg differ
diff --git a/lib/entagged-audioformats-0.15.jar b/lib/entagged-audioformats-0.15.jar
new file mode 100644
index 0000000..a151cf2
Binary files /dev/null and b/lib/entagged-audioformats-0.15.jar differ
diff --git a/lib/jaudiotagger-2.2.6-SNAPSHOT.jar b/lib/jaudiotagger-2.2.6-SNAPSHOT.jar
new file mode 100644
index 0000000..e8a0acc
Binary files /dev/null and b/lib/jaudiotagger-2.2.6-SNAPSHOT.jar differ
diff --git a/src/Album.java b/src/Album.java
new file mode 100644
index 0000000..35145b1
--- /dev/null
+++ b/src/Album.java
@@ -0,0 +1,26 @@
+import javafx.beans.property.SimpleIntegerProperty;
+import javafx.beans.property.SimpleStringProperty;
+
+public class Album {
+ private final SimpleStringProperty artist;
+ private final SimpleIntegerProperty year;
+ private final SimpleStringProperty album;
+
+ Album ( String artist, int year, String album ) {
+ this.artist = new SimpleStringProperty ( artist );
+ this.year = new SimpleIntegerProperty ( year );
+ this.album = new SimpleStringProperty ( album );
+ }
+
+ public String getArtist () {
+ return artist.get();
+ }
+
+ public int getYear () {
+ return year.get();
+ }
+
+ public String getAlbum () {
+ return album.get();
+ }
+}
diff --git a/src/MusicPlayer.java b/src/MusicPlayer.java
new file mode 100644
index 0000000..8aeada5
--- /dev/null
+++ b/src/MusicPlayer.java
@@ -0,0 +1,253 @@
+import java.io.File;
+
+import org.jaudiotagger.audio.AudioFile;
+import org.jaudiotagger.audio.AudioFileIO;
+import org.jaudiotagger.tag.FieldKey;
+import org.jaudiotagger.tag.Tag;
+
+import javafx.application.Application;
+import javafx.collections.FXCollections;
+import javafx.collections.ObservableList;
+import javafx.geometry.Insets;
+import javafx.geometry.Orientation;
+import javafx.geometry.Pos;
+import javafx.scene.Group;
+import javafx.scene.Scene;
+import javafx.scene.control.Button;
+import javafx.scene.control.Label;
+import javafx.scene.control.Slider;
+import javafx.scene.control.SplitPane;
+import javafx.scene.control.TableColumn;
+import javafx.scene.control.TableView;
+import javafx.scene.control.TextField;
+import javafx.scene.control.cell.PropertyValueFactory;
+import javafx.scene.image.Image;
+import javafx.scene.image.ImageView;
+import javafx.scene.layout.BorderPane;
+import javafx.scene.layout.HBox;
+import javafx.scene.layout.StackPane;
+import javafx.scene.layout.VBox;
+import javafx.stage.Stage;
+
+
+@SuppressWarnings({ "rawtypes", "unchecked" }) //TODO: Maybe get rid of this when I understand things better
+public class MusicPlayer extends Application {
+
+ public static final String PROGRAM_NAME = "Music Player";
+
+ final static ObservableList albumListData = FXCollections.observableArrayList(
+ new Album ("Air", 2009, "Pocket WhateveR" ),
+ new Album ("Air", 2008, "Pocket WhateveR" ),
+ new Album ("Air", 2007, "Pocket WhateveR" ),
+ new Album ("Air", 2006, "Pocket WhateveR" ),
+ new Album ("Air", 2005, "Pocket WhateveR" ),
+ new Album ("Air", 2004, "Pocket WhateveR" ),
+ new Album ("Josh", 2008, "wefwef" ),
+ new Album ("EWFEW", 2005, "EEFEFE" ),
+ new Album ("Maria", 1949, "AAA" ),
+ new Album ("Thomas", 2000, "DDDDD" ),
+ new Album ("234234", 1999, "wefwef" ),
+ new Album ("wefawfasdfs", 2008, "AAAAA" ),
+ new Album ("qqqqqq", 2008, "VBBBBB" )
+ );
+
+ final static ObservableList