X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Fxwt%2FRes.java;h=6bf79a382552228620a167a60f91dc54f7b0b15b;hb=81bb6c152f30f56b093cf0670cca3640a5c47ae2;hp=54bebcb68469c1835cacaf8fe812cca58eb15048;hpb=6440d675cc107ed11bef447596121ced4dcac189;p=org.ibex.core.git diff --git a/src/org/xwt/Res.java b/src/org/xwt/Res.java index 54bebcb..6bf79a3 100644 --- a/src/org/xwt/Res.java +++ b/src/org/xwt/Res.java @@ -142,6 +142,16 @@ public abstract class Res extends JS { } } + /** the Builtin resource */ + public static class Builtin extends Res { + public Builtin() { }; + public String getDescriptiveName() { return "[builtin]"; } + public InputStream getInputStream(String path) throws IOException { + if (!path.equals("")) throw new IOException("the builtin resource has no subresources"); + return Platform.getBuiltinInputStream(); + } + } + /** what you get when you reference a subresource */ public static class Ref extends Res { Res parent; @@ -149,7 +159,9 @@ public abstract class Res extends JS { Ref(Res parent, Object key) { this.parent = parent; this.key = key; } public String getDescriptiveName() { String pdn = parent.getDescriptiveName(); - return pdn.equals("") ? key.toString() : (pdn + "." + key.toString()); + if (pdn.equals("")) return key.toString(); + if (!pdn.endsWith("!")) pdn += "."; + return pdn + key.toString(); } public Res addExtension(String extension) { return (key instanceof String && ((String)key).endsWith(extension)) ? this : new Ref(parent, key + extension);