package be.nikiroo.fanfix_swing.gui;
-import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
-import java.io.IOException;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
-import javax.swing.JPanel;
import javax.swing.JSplitPane;
-import javax.swing.SwingWorker;
+import be.nikiroo.fanfix_swing.Actions;
import be.nikiroo.utils.Version;
public class MainFrame extends JFrame {
private BooksPanel books;
private DetailsPanel details;
+ private BrowserPanel browser;
public MainFrame(boolean sidePanel, boolean detailsPanel) {
super("Fanfix " + Version.getCurrentVersion());
sidePanel = true;
detailsPanel = true;
- final BrowserPanel browser = new BrowserPanel();
+ browser = new BrowserPanel();
JComponent other = null;
boolean orientationH = true;
}
books = new BooksPanel(true);
+
browser.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
details.setBook(browser.getHighlight());
}
});
+ books.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ if (BooksPanel.INVALIDATE_CACHE.equals(e.getActionCommand())) {
+ browser.reloadData();
+ }
+ }
+ });
JSplitPane split = split(other, books, orientationH, 0.5, 0);
JMenu file = new JMenu("File");
file.setMnemonic(KeyEvent.VK_F);
- JMenuItem item1 = new JMenuItem("Uuu", KeyEvent.VK_U);
+ JMenuItem item1 = new JMenuItem("Download", KeyEvent.VK_D);
item1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
- System.out.println("Uuu: ACTION");
+ Actions.imprt(MainFrame.this, true, new Runnable() {
+ @Override
+ public void run() {
+ browser.reloadData();
+ books.load(browser.getSelectedSources(), browser.getSelectedAuthors(),
+ browser.getSelectedTags());
+ details.setBook(browser.getHighlight());
+ }
+ });
+ }
+ });
+
+ JMenuItem item2 = new JMenuItem("Import file", KeyEvent.VK_I);
+ item2.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ Actions.imprt(MainFrame.this, false, new Runnable() {
+ @Override
+ public void run() {
+ browser.reloadData();
+ books.load(browser.getSelectedSources(), browser.getSelectedAuthors(),
+ browser.getSelectedTags());
+ details.setBook(browser.getHighlight());
+ }
+ });
}
});
file.add(item1);
+ file.add(item2);
JMenu edit = new JMenu("Edit");
edit.setMnemonic(KeyEvent.VK_E);