Instance: use getInstance()
[nikiroo-utils.git] / src / be / nikiroo / fanfix / reader / tui / TuiReaderMainWindow.java
index 6523cfa0eab33e244cd39d54bfbfbcc350b9e9a1..b1ebcc2e6971de4c25e119c5e6fbbb7a32043844 100644 (file)
@@ -22,7 +22,7 @@ import be.nikiroo.fanfix.Instance;
 import be.nikiroo.fanfix.data.MetaData;
 import be.nikiroo.fanfix.library.BasicLibrary;
 import be.nikiroo.fanfix.output.BasicOutput.OutputType;
-import be.nikiroo.fanfix.reader.Reader;
+import be.nikiroo.jexer.TSizeConstraint;
 
 /**
  * The library window, that will list all the (filtered) stories available in
@@ -42,7 +42,7 @@ class TuiReaderMainWindow extends TWindow {
        private TList list;
        private List<MetaData> listKeys;
        private List<String> listItems;
-       private Reader reader;
+       private TuiReaderApplication reader;
 
        private Mode mode = Mode.SOURCE;
        private String target = null;
@@ -159,15 +159,24 @@ class TuiReaderMainWindow extends TWindow {
                                } else if (smode.equals("Sources")) {
                                        selectTargets.clear();
                                        selectTargets.add("(show all)");
-                                       for (String source : reader.getLibrary().getSources()) {
-                                               selectTargets.add(source);
+                                       try {
+                                               for (String source : reader.getLibrary().getSources()) {
+                                                       selectTargets.add(source);
+                                               }
+                                       } catch (IOException e) {
+                                               Instance.getInstance().getTraceHandler().error(e);
                                        }
+
                                        showTarget = true;
                                } else {
                                        selectTargets.clear();
                                        selectTargets.add("(show all)");
-                                       for (String author : reader.getLibrary().getAuthors()) {
-                                               selectTargets.add(author);
+                                       try {
+                                               for (String author : reader.getLibrary().getAuthors()) {
+                                                       selectTargets.add(author);
+                                               }
+                                       } catch (IOException e) {
+                                               Instance.getInstance().getTraceHandler().error(e);
                                        }
 
                                        showTarget = true;
@@ -231,12 +240,18 @@ class TuiReaderMainWindow extends TWindow {
         */
        public void refreshStories() {
                List<MetaData> metas;
-               if (mode == Mode.SOURCE) {
-                       metas = reader.getLibrary().getListBySource(target);
-               } else if (mode == Mode.AUTHOR) {
-                       metas = reader.getLibrary().getListByAuthor(target);
-               } else {
-                       metas = reader.getLibrary().getList();
+
+               try {
+                       if (mode == Mode.SOURCE) {
+                               metas = reader.getLibrary().getListBySource(target);
+                       } else if (mode == Mode.AUTHOR) {
+                               metas = reader.getLibrary().getListByAuthor(target);
+                       } else {
+                               metas = reader.getLibrary().getList();
+                       }
+               } catch (IOException e) {
+                       Instance.getInstance().getTraceHandler().error(e);
+                       metas = new ArrayList<MetaData>();
                }
 
                setMetas(metas);
@@ -299,9 +314,9 @@ class TuiReaderMainWindow extends TWindow {
                try {
                        reader.setChapter(-1);
                        reader.setMeta(meta);
-                       reader.read();
+                       reader.read(false);
                } catch (IOException e) {
-                       Instance.getTraceHandler().error(e);
+                       Instance.getInstance().getTraceHandler().error(e);
                }
        }
 
@@ -324,11 +339,11 @@ class TuiReaderMainWindow extends TWindow {
                MetaData meta = getSelectedMeta();
                if (meta != null) {
                        switch (menu.getId()) {
-                       case TuiReaderApplication.MENU_OPEN:
+                       case TuiReaderApplication.MENU_FILE_OPEN:
                                readStory(meta);
 
                                return;
-                       case TuiReaderApplication.MENU_EXPORT:
+                       case TuiReaderApplication.MENU_FILE_EXPORT:
 
                                try {
                                        // TODO: choose type, pg, error