X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Freader%2Ftui%2FTuiReaderApplication.java;h=f85f12fdb865ec1aaa25540a5cf131d6c6b0e910;hb=d66deb8d8b30cff6b54db352eef34a3508939f84;hp=177c12ab867094cbd61292d88314662a569b0ecc;hpb=70ee499b74323435ac7ac7dc8676d42c2e9048db;p=nikiroo-utils.git diff --git a/src/be/nikiroo/fanfix/reader/tui/TuiReaderApplication.java b/src/be/nikiroo/fanfix/reader/tui/TuiReaderApplication.java index 177c12a..f85f12f 100644 --- a/src/be/nikiroo/fanfix/reader/tui/TuiReaderApplication.java +++ b/src/be/nikiroo/fanfix/reader/tui/TuiReaderApplication.java @@ -37,15 +37,19 @@ import be.nikiroo.utils.Progress; * @author niki */ class TuiReaderApplication extends TApplication implements Reader { - public static final int MENU_OPEN = 1025; - public static final int MENU_IMPORT_URL = 1026; - public static final int MENU_IMPORT_FILE = 1027; - public static final int MENU_EXPORT = 1028; - public static final int MENU_DELETE = 1029; - public static final int MENU_LIBRARY = 1030; - public static final int MENU_EXIT = 1031; - - public static final TCommand CMD_EXIT = new TCommand(MENU_EXIT) { + public static final int MENU_FILE_OPEN = 1025; + public static final int MENU_FILE_IMPORT_URL = 1026; + public static final int MENU_FILE_IMPORT_FILE = 1027; + public static final int MENU_FILE_EXPORT = 1028; + public static final int MENU_FILE_DELETE = 1029; + public static final int MENU_FILE_LIBRARY = 1030; + public static final int MENU_FILE_EXIT = 1031; + // + public static final int MENU_OPT_FANFIX = 1032; + public static final int MENU_OPT_TUI = 1033; + + + public static final TCommand CMD_EXIT = new TCommand(MENU_FILE_EXIT) { }; private Reader reader; @@ -66,7 +70,7 @@ class TuiReaderApplication extends TApplication implements Reader { TApplication.BackendType backend) throws Exception { super(backend); init(reader); - + showMain(); main.setMode(Mode.SOURCE, source); } @@ -82,7 +86,7 @@ class TuiReaderApplication extends TApplication implements Reader { } @Override - public Story getStory(Progress pg) { + public Story getStory(Progress pg) throws IOException { return reader.getStory(pg); } @@ -113,7 +117,11 @@ class TuiReaderApplication extends TApplication implements Reader { @Override public void browse(String source) { - reader.browse(source); + try { + reader.browse(source); + } catch (IOException e) { + Instance.getInstance().getTraceHandler().error(e); + } } @Override @@ -125,15 +133,22 @@ class TuiReaderApplication extends TApplication implements Reader { public void setChapter(int chapter) { reader.setChapter(chapter); } - + @Override - public void search(SupportType searchOn, String keywords, int page, int item) { - reader.search(searchOn, keywords, page,item); + public void search(boolean sync) throws IOException { + reader.search(sync); } - + @Override - public void searchTag(SupportType searchOn, int page, int item, String... tags) { - reader.searchTag(searchOn, page, item, tags); + public void search(SupportType searchOn, String keywords, int page, + int item, boolean sync) throws IOException { + reader.search(searchOn, keywords, page, item, sync); + } + + @Override + public void searchTag(SupportType searchOn, int page, int item, + boolean sync, Integer... tags) throws IOException { + reader.searchTag(searchOn, page, item, sync, tags); } /** @@ -204,24 +219,29 @@ class TuiReaderApplication extends TApplication implements Reader { this.reader = reader; // TODO: traces/errors? - Instance.setTraceHandler(null); + Instance.getInstance().setTraceHandler(null); // Add the menus TODO: i18n TMenu fileMenu = addMenu("&File"); - fileMenu.addItem(MENU_OPEN, "&Open..."); - fileMenu.addItem(MENU_EXPORT, "&Save as..."); - fileMenu.addItem(MENU_DELETE, "&Delete..."); + fileMenu.addItem(MENU_FILE_OPEN, "&Open..."); + fileMenu.addItem(MENU_FILE_EXPORT, "&Save as..."); + fileMenu.addItem(MENU_FILE_DELETE, "&Delete..."); // TODO: Move to... fileMenu.addSeparator(); - fileMenu.addItem(MENU_IMPORT_URL, "Import &URL..."); - fileMenu.addItem(MENU_IMPORT_FILE, "Import &file..."); + fileMenu.addItem(MENU_FILE_IMPORT_URL, "Import &URL..."); + fileMenu.addItem(MENU_FILE_IMPORT_FILE, "Import &file..."); fileMenu.addSeparator(); - fileMenu.addItem(MENU_LIBRARY, "Lib&rary"); + fileMenu.addItem(MENU_FILE_LIBRARY, "Lib&rary"); fileMenu.addSeparator(); - fileMenu.addItem(MENU_EXIT, "E&xit"); + fileMenu.addItem(MENU_FILE_EXIT, "E&xit"); + + TMenu OptionsMenu = addMenu("&Options"); + OptionsMenu.addItem(MENU_OPT_FANFIX, "&Fanfix Configuration"); + OptionsMenu.addItem(MENU_OPT_TUI, "&UI Configuration"); setStatusBar(fileMenu, "File-management " + "commands (Open, Save, Print, etc.)"); + // TODO: Edit: re-download, delete @@ -245,10 +265,10 @@ class TuiReaderApplication extends TApplication implements Reader { protected boolean onMenu(TMenuEvent menu) { // TODO: i18n switch (menu.getId()) { - case MENU_EXIT: + case MENU_FILE_EXIT: close(this); return true; - case MENU_OPEN: + case MENU_FILE_OPEN: String openfile = null; try { openfile = fileOpenBox("."); @@ -262,7 +282,7 @@ class TuiReaderApplication extends TApplication implements Reader { } return true; - case MENU_DELETE: + case MENU_FILE_DELETE: String luid = null; String story = null; MetaData meta = null; @@ -291,7 +311,7 @@ class TuiReaderApplication extends TApplication implements Reader { } return true; - case MENU_IMPORT_URL: + case MENU_FILE_IMPORT_URL: String clipboard = ""; try { clipboard = ("" + Toolkit.getDefaultToolkit() @@ -319,7 +339,7 @@ class TuiReaderApplication extends TApplication implements Reader { } return true; - case MENU_IMPORT_FILE: + case MENU_FILE_IMPORT_FILE: String filename = null; try { filename = fileOpenBox("."); @@ -334,9 +354,18 @@ class TuiReaderApplication extends TApplication implements Reader { "Import error", e); } return true; - case MENU_LIBRARY: + case MENU_FILE_LIBRARY: showMain(); return true; + + case MENU_OPT_FANFIX: + new TuiReaderOptionWindow(this, false).maximize(); + return true; + + case MENU_OPT_TUI: + new TuiReaderOptionWindow(this, true).maximize(); + return true; + } return super.onMenu(menu); @@ -394,9 +423,9 @@ class TuiReaderApplication extends TApplication implements Reader { * the exception to log if any (can be NULL) */ private void error(String message, String title, Exception e) { - Instance.getTraceHandler().error(title + ": " + message); + Instance.getInstance().getTraceHandler().error(title + ": " + message); if (e != null) { - Instance.getTraceHandler().error(e); + Instance.getInstance().getTraceHandler().error(e); } if (e != null) {