diff --git a/jslib/src/core/core.kt b/jslib/src/core/core.kt index bb70b9a6cf6..0e3ceb4fe5c 100644 --- a/jslib/src/core/core.kt +++ b/jslib/src/core/core.kt @@ -4,6 +4,10 @@ import js.library import js.native import java.util.*; + + +val noImpl : Nothing = throw Exception(); + library("println") fun println() {} library("println") diff --git a/jslib/src/html5/core.kt b/jslib/src/html5/canvas.kt similarity index 91% rename from jslib/src/html5/core.kt rename to jslib/src/html5/canvas.kt index 41e6d7b4ca8..6caa62ab6d4 100644 --- a/jslib/src/html5/core.kt +++ b/jslib/src/html5/canvas.kt @@ -84,7 +84,7 @@ class Context() { } native -class HTMLImageElement() : DomElement() { +open class HTMLImageElement() : DomElement() { } native @@ -95,8 +95,12 @@ class CanvasGradient() { native class Canvas() : DomElement() { - val width = 0.0; - val height = 0.0; + var width = 0.0; + var height = 0.0; + + //DOMString toDataURL(in optional DOMString type, in any... args); + fun toDataURL() : String = js.noImpl + fun toDataURL(typ : String) : String = js.noImpl } native diff --git a/jslib/src/html5/image.kt b/jslib/src/html5/image.kt new file mode 100644 index 00000000000..dc1ec502959 --- /dev/null +++ b/jslib/src/html5/image.kt @@ -0,0 +1,25 @@ +package html5 + +import js.Exception +import js.native +import js.DomElement +import html5.files.FileList + +native +class HTMLInputElement() : DomElement() { + val files : FileList = js.noImpl + var onchange : (HTMLInputElementEvent)->Unit = js.noImpl +} + +native +class HTMLInputElementEvent() { + val target : HTMLInputElement = js.noImpl +} + +native +class Image() : HTMLImageElement() { + var height : Int = js.noImpl + var width : Int = js.noImpl + var src : String = js.noImpl + var onload : ()->Unit = js.noImpl +} \ No newline at end of file diff --git a/jslib/src/jquery/common.kt b/jslib/src/jquery/common.kt index 159b7bfa296..856bf3e49fe 100644 --- a/jslib/src/jquery/common.kt +++ b/jslib/src/jquery/common.kt @@ -30,6 +30,9 @@ class JQuery() { fun dblclick(handler : DomElement.(MouseClickEvent)->Unit) = this; fun click(handler : DomElement.(MouseClickEvent)->Unit) = this; + fun load(handler : DomElement.()->Unit) = this; + fun change(handler : DomElement.()->Unit) = this; + fun append(str : String) = this; fun ready(handler : ()->Unit) = this; fun text(text : String) = this; diff --git a/translator/src/org/jetbrains/k2js/config/Config.java b/translator/src/org/jetbrains/k2js/config/Config.java index 7ae7b742347..ecee2a73aca 100644 --- a/translator/src/org/jetbrains/k2js/config/Config.java +++ b/translator/src/org/jetbrains/k2js/config/Config.java @@ -1,7 +1,5 @@ package org.jetbrains.k2js.config; -import com.google.common.base.Charsets; -import com.google.common.io.Files; import com.intellij.openapi.project.Project; import core.Dummy; import org.jetbrains.annotations.NotNull; @@ -9,7 +7,10 @@ import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.k2js.utils.JetFileUtils; -import java.io.*; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.Reader; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -33,7 +34,10 @@ public abstract class Config { "/core/math.kt", "/core/json.kt", "/raphael/raphael.kt", - "/html5/core.kt" + "/html5/canvas.kt", + "/html5/files.kt", + "/html5/image.kt", + "/helper/ip.kt" ); diff --git a/translator/src/org/jetbrains/k2js/translate/utils/BindingUtils.java b/translator/src/org/jetbrains/k2js/translate/utils/BindingUtils.java index 81c129daa6b..ee083e053e3 100644 --- a/translator/src/org/jetbrains/k2js/translate/utils/BindingUtils.java +++ b/translator/src/org/jetbrains/k2js/translate/utils/BindingUtils.java @@ -86,6 +86,10 @@ public final class BindingUtils { @NotNull NamespaceDescriptor namespace) { List declarations = new ArrayList(); for (DeclarationDescriptor descriptor : namespace.getMemberScope().getAllDescriptors()) { + //TODO: + if (descriptor instanceof NamespaceDescriptor) { + continue; + } JetDeclaration declaration = BindingUtils.getDeclarationForDescriptor(bindingContext, descriptor); if (declaration != null) { declarations.add(declaration);