X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Foutput%2FBasicOutput.java;h=909c8fe9707b6a76a05d6ebdf151193142757b6e;hb=0efd25e3aa839ba82da1054a470c27830b9ed94a;hp=5e82f253c37e47cd535faea739d69f83c4940cd2;hpb=3b2b638f7e1395702f843b5b19d7959327f604b2;p=fanfix.git diff --git a/src/be/nikiroo/fanfix/output/BasicOutput.java b/src/be/nikiroo/fanfix/output/BasicOutput.java index 5e82f25..909c8fe 100644 --- a/src/be/nikiroo/fanfix/output/BasicOutput.java +++ b/src/be/nikiroo/fanfix/output/BasicOutput.java @@ -52,15 +52,23 @@ public abstract class BasicOutput { /** * A description of this output type. * + * @param longDesc + * TRUE for the long description, FALSE for the short one + * * @return the description */ - public String getDesc() { - String desc = Instance.getTrans().getStringX(StringId.OUTPUT_DESC, - this.name()); + public String getDesc(boolean longDesc) { + StringId id = longDesc ? StringId.OUTPUT_DESC + : StringId.OUTPUT_DESC_SHORT; + + String desc = Instance.getTrans().getStringX(id, this.name()); + + if (desc == null) { + desc = Instance.getTrans().getString(id, this); + } if (desc == null) { - desc = Instance.getTrans() - .getString(StringId.OUTPUT_DESC, this); + desc = this.toString(); } return desc; @@ -69,19 +77,25 @@ public abstract class BasicOutput { /** * The default extension to add to the output files. * + * @param readerTarget + * the target to point to to read the {@link Story} (for + * instance, the main entry point if this {@link Story} is in + * a directory bundle) + * * @return the extension */ - public String getDefaultExtension() { + public String getDefaultExtension(boolean readerTarget) { BasicOutput output = BasicOutput.getOutput(this, false); if (output != null) { - return output.getDefaultExtension(); + return output.getDefaultExtension(readerTarget); } return null; } /** - * Call {@link OutputType#valueOf(String.toUpperCase())}. + * Call {@link OutputType#valueOf(String)} after conversion to upper + * case. * * @param typeName * the possible type name @@ -94,8 +108,9 @@ public abstract class BasicOutput { } /** - * Call {@link OutputType#valueOf(String.toUpperCase())} but return NULL - * for NULL and empty instead of raising an exception. + * Call {@link OutputType#valueOf(String)} after conversion to upper + * case but return NULL for NULL and empty instead of raising an + * exception. * * @param typeName * the possible type name @@ -111,8 +126,9 @@ public abstract class BasicOutput { } /** - * Call {@link OutputType#valueOf(String.toUpperCase())} but return NULL - * in case of error instead of raising an exception. + * Call {@link OutputType#valueOf(String)} after conversion to upper + * case but return NULL in case of error instead of raising an + * exception. * * @param typeName * the possible type name @@ -162,15 +178,19 @@ public abstract class BasicOutput { throws IOException { storyPg = pg; - target = new File(target).getAbsolutePath(); - File targetDir = new File(target).getParentFile(); - String targetName = new File(target).getName(); - - String ext = getDefaultExtension(); - if (ext != null && !ext.isEmpty()) { - if (targetName.toLowerCase().endsWith(ext)) { - targetName = targetName.substring(0, - targetName.length() - ext.length()); + File targetDir = null; + String targetName = null; + if (target != null) { + target = new File(target).getAbsolutePath(); + targetDir = new File(target).getParentFile(); + targetName = new File(target).getName(); + + String ext = getDefaultExtension(false); + if (ext != null && !ext.isEmpty()) { + if (targetName.toLowerCase().endsWith(ext)) { + targetName = targetName.substring(0, targetName.length() + - ext.length()); + } } } @@ -221,9 +241,10 @@ public abstract class BasicOutput { * * @param type * the new type - * @param infoCover - * TRUE to enable the creation of a .info file and a cover if - * possible + * @param writeInfo + * TRUE to enable the creation of a .info file + * @param writeCover + * TRUE to enable the creation of a cover if possible * * @return this */ @@ -239,9 +260,14 @@ public abstract class BasicOutput { /** * The default extension to add to the output files. * + * @param readerTarget + * the target to point to to read the {@link Story} (for + * instance, the main entry point if this {@link Story} is in a + * directory bundle) + * * @return the extension */ - public String getDefaultExtension() { + public String getDefaultExtension(boolean readerTarget) { return ""; }