X-Git-Url: http://git.nikiroo.be/?p=jvcard.git;a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Fjvcard%2Ftui%2Fpanes%2FFileList.java;h=e7632e02344514fa4ecdb8a29dc89b77d6b7f75f;hp=a59311b86819b1a7983eefb25539d037ac12abf3;hb=7da41ecd30228908bf2afcd07ff7943ab59d4c01;hpb=2a96e7b2cf3f155cccc633272b2f547ffd8f4672 diff --git a/src/be/nikiroo/jvcard/tui/panes/FileList.java b/src/be/nikiroo/jvcard/tui/panes/FileList.java index a59311b..e7632e0 100644 --- a/src/be/nikiroo/jvcard/tui/panes/FileList.java +++ b/src/be/nikiroo/jvcard/tui/panes/FileList.java @@ -1,28 +1,26 @@ package be.nikiroo.jvcard.tui.panes; -import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.LinkedList; import java.util.List; import be.nikiroo.jvcard.Card; -import be.nikiroo.jvcard.i18n.Trans; -import be.nikiroo.jvcard.parsers.Format; +import be.nikiroo.jvcard.launcher.Main; +import be.nikiroo.jvcard.resources.StringUtils; +import be.nikiroo.jvcard.resources.Trans; import be.nikiroo.jvcard.tui.KeyAction; import be.nikiroo.jvcard.tui.KeyAction.DataType; import be.nikiroo.jvcard.tui.KeyAction.Mode; -import be.nikiroo.jvcard.tui.StringUtils; -import be.nikiroo.jvcard.tui.UiColors; import be.nikiroo.jvcard.tui.UiColors.Element; import com.googlecode.lanterna.input.KeyType; public class FileList extends MainContentList { - private List files; + private List files; private List cards; - public FileList(List files) { + public FileList(List files) { setFiles(files); } @@ -32,13 +30,13 @@ public class FileList extends MainContentList { * @param files * the new files */ - public void setFiles(List files) { + public void setFiles(List files) { clearItems(); this.files = files; cards = new ArrayList(); - for (File file : files) { - addItem(file.getName()); + for (String file : files) { + addItem(file); // TODO cards.add(null); } @@ -67,9 +65,13 @@ public class FileList extends MainContentList { if (cards.get(index) != null) count += cards.get(index).size(); - String name = files.get(index).getName(); + String name = files.get(index).replaceAll("\\\\", "/"); + int indexSl = name.lastIndexOf('/'); + if (indexSl >= 0) { + name = name.substring(indexSl + 1); + } - name = StringUtils.sanitize(name, UiColors.getInstance().isUnicode()); + name = StringUtils.sanitize(name, Main.isUnicode()); count = " " + StringUtils.padString(count, SIZE_COL_1) + " "; name = " " @@ -100,18 +102,10 @@ public class FileList extends MainContentList { if (cards.get(index) != null) return cards.get(index); - File file = files.get(index); - Format format = Format.Abook; - String ext = file.getName(); - if (ext.contains(".")) { - String tab[] = ext.split("\\."); - if (tab.length > 1 - && tab[tab.length - 1].equalsIgnoreCase("vcf")) { - format = Format.VCard21; - } - } + String file = files.get(index); + try { - Card card = new Card(file, format); + Card card = Main.getCard(file); cards.set(index, card); invalidate();