import java.io.IOException;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
import jexer.TAction;
import jexer.TFileOpenBox.Type;
import jexer.TList;
import jexer.TWindow;
+import jexer.event.TCommandEvent;
import jexer.event.TMenuEvent;
import be.nikiroo.fanfix.Instance;
import be.nikiroo.fanfix.data.MetaData;
this.reader = reader;
- maximize();
-
listKeys = new ArrayList<MetaData>();
listItems = new ArrayList<String>();
- list = addList(listItems, 0, 0, getWidth(), getHeight(), new TAction() {
+
+ // TODO size + onResize
+
+
+
+ addLabel("Search: ", 5, 3);
+ addField(15, 3, 5, true);
+
+ addLabel("Sort by: ", 5, 1);
+ // -1 = no default index (0 means first,...) 1=height when visible, null
+ // = action
+ List<String> data = Arrays.asList("(show all)", "Source", "Name", "Author");
+ // must be last so to be able to draw over the rest
+ // TODO: make it so we cannot add manual entries
+ // TODO: how to select the item via keyboard? why double-click via mouse?
+ addComboBox(15, 1, 12,
+ data, 0, Math.min(data.size()+1,getHeight()-1-1),
+ null);
+
+ list = addList(listItems, 0, 7, getWidth(), getHeight(), new TAction() {
@Override
public void DO() {
MetaData meta = getSelectedMeta();
return String.format("%5s: %s", meta.getLuid(), meta.getTitle());
}
+ @Override
+ public void onCommand(TCommandEvent command) {
+ if (command.getCmd().equals(TuiReaderApplication.CMD_EXIT)) {
+ TuiReaderApplication.close(this);
+ } else {
+ // Handle our own event if needed here
+ super.onCommand(command);
+ }
+ }
+
@Override
public void onMenu(TMenuEvent menu) {
MetaData meta = getSelectedMeta();