diff --git a/fmframework/src/sarsoo/fmframework/error/ApiCallException.java b/fmframework/src/sarsoo/fmframework/error/ApiCallException.java
index a25c7e7..a2c2dd4 100644
--- a/fmframework/src/sarsoo/fmframework/error/ApiCallException.java
+++ b/fmframework/src/sarsoo/fmframework/error/ApiCallException.java
@@ -1,7 +1,5 @@
package sarsoo.fmframework.error;
-import sarsoo.fmframework.util.Reference;
-
public class ApiCallException extends Exception {
private int failureCode;
diff --git a/fmframework/src/sarsoo/fmframework/gui/AlbumView.java b/fmframework/src/sarsoo/fmframework/gui/AlbumView.java
index 6e949cb..c0d903d 100644
--- a/fmframework/src/sarsoo/fmframework/gui/AlbumView.java
+++ b/fmframework/src/sarsoo/fmframework/gui/AlbumView.java
@@ -31,6 +31,7 @@ public class AlbumView extends JFrame {
JButton open = new JButton("View Online");
JButton viewArtist = new JButton("View Artist");
+ JButton viewWiki = new JButton("View Wiki");
JButton musicBrainz = new JButton("Open MusicBrainz");
JButton rym = new JButton("Open RYM");
@@ -49,6 +50,8 @@ public class AlbumView extends JFrame {
buttons.add(open);
buttons.add(viewArtist);
+ if (album.getWiki() != null)
+ buttons2.add(viewWiki);
if (album.getMbid() != null)
buttons2.add(musicBrainz);
buttons2.add(rym);
@@ -72,6 +75,11 @@ public class AlbumView extends JFrame {
album.getArtist().view();
}
});
+ viewWiki.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ album.getWiki().view(album.getName());
+ }
+ });
musicBrainz.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Network.openURL(album.getMusicBrainzURL());
diff --git a/fmframework/src/sarsoo/fmframework/gui/FMObjView.java b/fmframework/src/sarsoo/fmframework/gui/FMObjView.java
index cff4dbd..7e4f927 100644
--- a/fmframework/src/sarsoo/fmframework/gui/FMObjView.java
+++ b/fmframework/src/sarsoo/fmframework/gui/FMObjView.java
@@ -23,6 +23,7 @@ public class FMObjView extends JFrame{
JLabel playCount = new JLabel();
JLabel userPlayCount = new JLabel();
+ JButton viewWiki = new JButton("View Wiki");
JButton open = new JButton("View Online");
JButton musicBrainz = new JButton("Open MusicBrainz");
@@ -31,11 +32,13 @@ public class FMObjView extends JFrame{
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setLayout(new GridLayout(5,0));
setSize(300, 300);
- setResizable(false);
+// setResizable(false);
buttons.setLayout(new FlowLayout());
buttons.add(open);
+ if (obj.getWiki() != null)
+ buttons.add(viewWiki);
if(obj.getMbid() != null)
buttons.add(musicBrainz);
@@ -47,7 +50,11 @@ public class FMObjView extends JFrame{
playCount.setText(numberFormat.format(obj.getPlayCount()) + " Scrobbles");
userPlayCount.setText(numberFormat.format(obj.getUserPlayCount()) + " Your Scrobbles");
-
+ viewWiki.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ obj.getWiki().view(obj.getName());
+ }
+ });
open.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Network.openURL(obj.getUrl());
diff --git a/fmframework/src/sarsoo/fmframework/gui/TrackView.java b/fmframework/src/sarsoo/fmframework/gui/TrackView.java
index 092676d..8f1df16 100644
--- a/fmframework/src/sarsoo/fmframework/gui/TrackView.java
+++ b/fmframework/src/sarsoo/fmframework/gui/TrackView.java
@@ -29,6 +29,7 @@ public class TrackView extends JFrame {
JButton open = new JButton("View Online");
JButton viewArtist = new JButton("View Artist");
JButton viewAlbum = new JButton("View Album");
+ JButton viewWiki = new JButton("View Wiki");
JButton musicBrainz = new JButton("Open MusicBrainz");
JButton genius = new JButton("Open Genius");
@@ -43,6 +44,8 @@ public class TrackView extends JFrame {
buttons2.setLayout(new FlowLayout());
buttons.add(open);
+ if (track.getWiki() != null)
+ buttons.add(viewWiki);
if (track.getMbid() != null)
buttons.add(musicBrainz);
buttons2.add(viewArtist);
@@ -66,6 +69,11 @@ public class TrackView extends JFrame {
Network.openURL(track.getUrl());
}
});
+ viewWiki.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ track.getWiki().view(track.getName());
+ }
+ });
viewArtist.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
track.getArtist().view();
diff --git a/fmframework/src/sarsoo/fmframework/gui/WikiView.java b/fmframework/src/sarsoo/fmframework/gui/WikiView.java
new file mode 100644
index 0000000..3579fb3
--- /dev/null
+++ b/fmframework/src/sarsoo/fmframework/gui/WikiView.java
@@ -0,0 +1,153 @@
+package sarsoo.fmframework.gui;
+
+import java.awt.FlowLayout;
+import java.awt.GridLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.text.NumberFormat;
+import java.util.ArrayList;
+import java.util.Locale;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+
+import sarsoo.fmframework.music.Album;
+import sarsoo.fmframework.music.FMObj;
+import sarsoo.fmframework.music.Track;
+import sarsoo.fmframework.music.Wiki;
+import sarsoo.fmframework.net.Network;
+
+public class WikiView extends JFrame {
+// JPanel date = new JPanel();
+// JPanel content = new JPanel();
+// JPanel trackListPanel = new JPanel();
+
+// JLabel dateLabel = new JLabel();
+ JLabel contentLabel = new JLabel();
+// JLabel listeners = new JLabel();
+// JLabel playCount = new JLabel();
+// JLabel userPlayCount = new JLabel();
+//
+// JButton open = new JButton("View Online");
+// JButton viewArtist = new JButton("View Artist");
+// JButton viewWiki = new JButton("View Wiki");
+// JButton musicBrainz = new JButton("Open MusicBrainz");
+// JButton rym = new JButton("Open RYM");
+
+ public WikiView(Wiki wiki, String name) {
+ super(name);
+ setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
+ setLayout(new GridLayout(1,1));
+ setSize(400, 500);
+// setResizable(false);
+
+// buttons.setLayout(new FlowLayout());
+// buttons2.setLayout(new FlowLayout());
+//// System.out.println(album.getName());
+//// if (album.getTrackList() != null)
+//// buttons2.setLayout(new GridLayout(album.getTrackList().size(), 1));
+//
+// buttons.add(open);
+// buttons.add(viewArtist);
+// if (album.getWiki() != null)
+// buttons2.add(viewWiki);
+// if (album.getMbid() != null)
+// buttons2.add(musicBrainz);
+// buttons2.add(rym);
+//
+// NumberFormat numberFormat = NumberFormat.getNumberInstance(Locale.US);
+//
+// dateLabel.setText(wiki.getDate());
+ contentLabel.setText("" + wiki.getContent() + "
" + wiki.getDate() + "");
+
+// artist.setText(album.getArtist().getName());
+// listeners.setText(numberFormat.format(album.getListeners()) + " Listeners");
+// playCount.setText(numberFormat.format(album.getPlayCount()) + " Scrobbles");
+// userPlayCount.setText(numberFormat.format(album.getUserPlayCount()) + " Your Scrobbles");
+//
+// open.addActionListener(new ActionListener() {
+// public void actionPerformed(ActionEvent arg0) {
+// Network.openURL(album.getUrl());
+// }
+// });
+// viewArtist.addActionListener(new ActionListener() {
+// public void actionPerformed(ActionEvent arg0) {
+// album.getArtist().view();
+// }
+// });
+// viewWiki.addActionListener(new ActionListener() {
+// public void actionPerformed(ActionEvent arg0) {
+// album.getWiki().view();
+// }
+// });
+// musicBrainz.addActionListener(new ActionListener() {
+// public void actionPerformed(ActionEvent arg0) {
+// Network.openURL(album.getMusicBrainzURL());
+// ;
+// }
+// });
+// rym.addActionListener(new ActionListener() {
+// public void actionPerformed(ActionEvent arg0) {
+// Network.openURL(album.getRymURL());
+// ;
+// }
+// });
+
+// if (album.getTrackList() != null) {
+// int counter;
+// ArrayList