Add progress reporting on GUI
[fanfix.git] / src / be / nikiroo / fanfix / reader / LocalReaderBook.java
index 8e353d91472cb3b738490ca3c108a92a7de8bc55..a9b24a2019f7c2902c40c97be63ca672430e7c46 100644 (file)
@@ -31,7 +31,7 @@ class LocalReaderBook extends JPanel {
         * 
         * @author niki
         */
-       interface BookActionListner extends EventListener {
+       interface BookActionListener extends EventListener {
                /**
                 * The book was selected (single click).
                 * 
@@ -59,15 +59,15 @@ class LocalReaderBook extends JPanel {
        private static final int TEXT_WIDTH = COVER_WIDTH + 40;
        private static final int TEXT_HEIGHT = 50;
        private static final String AUTHOR_COLOR = "#888888";
-
        private static final long serialVersionUID = 1L;
+
        private JLabel icon;
-       private JLabel tt;
+       private JLabel title;
        private boolean selected;
        private boolean hovered;
        private Date lastClick;
        private long doubleClickDelay = 200; // in ms
-       private List<BookActionListner> listeners;
+       private List<BookActionListener> listeners;
 
        public LocalReaderBook(MetaData meta) {
                if (meta.getCover() != null) {
@@ -91,7 +91,7 @@ class LocalReaderBook extends JPanel {
                if (optAuthor != null && !optAuthor.isEmpty()) {
                        optAuthor = "(" + optAuthor + ")";
                }
-               tt = new JLabel(
+               title = new JLabel(
                                String.format(
                                                "<html>"
                                                                + "<body style='width: %d px; height: %d px; text-align: center'>"
@@ -102,7 +102,7 @@ class LocalReaderBook extends JPanel {
 
                this.setLayout(new BorderLayout(10, 10));
                this.add(icon, BorderLayout.CENTER);
-               this.add(tt, BorderLayout.SOUTH);
+               this.add(title, BorderLayout.SOUTH);
 
                setupListeners();
                setSelected(false);
@@ -134,7 +134,7 @@ class LocalReaderBook extends JPanel {
        }
 
        private void setupListeners() {
-               listeners = new ArrayList<LocalReaderBook.BookActionListner>();
+               listeners = new ArrayList<LocalReaderBook.BookActionListener>();
                addMouseListener(new MouseListener() {
                        public void mouseReleased(MouseEvent e) {
                        }
@@ -151,20 +151,22 @@ class LocalReaderBook extends JPanel {
                        }
 
                        public void mouseClicked(MouseEvent e) {
-                               Date now = new Date();
-                               if (lastClick != null
-                                               && now.getTime() - lastClick.getTime() < doubleClickDelay) {
-                                       click(true);
-                               } else {
-                                       click(false);
+                               if (isEnabled()) {
+                                       Date now = new Date();
+                                       if (lastClick != null
+                                                       && now.getTime() - lastClick.getTime() < doubleClickDelay) {
+                                               click(true);
+                                       } else {
+                                               click(false);
+                                       }
+                                       lastClick = now;
                                }
-                               lastClick = now;
                        }
                });
        }
 
        private void click(boolean doubleClick) {
-               for (BookActionListner listener : listeners) {
+               for (BookActionListener listener : listeners) {
                        if (doubleClick) {
                                listener.action(this);
                        } else {
@@ -173,7 +175,7 @@ class LocalReaderBook extends JPanel {
                }
        }
 
-       public void addActionListener(BookActionListner listener) {
+       public void addActionListener(BookActionListener listener) {
                listeners.add(listener);
        }
 
@@ -199,7 +201,8 @@ class LocalReaderBook extends JPanel {
                g.fillPolygon(new Polygon(xs, ys, xs.length));
 
                Color color = new Color(255, 255, 255, 0);
-               if (selected && !hovered) {
+               if (!isEnabled()) {
+               } else if (selected && !hovered) {
                        color = new Color(80, 80, 100, 40);
                } else if (!selected && hovered) {
                        color = new Color(230, 230, 255, 100);