diff --git a/hide/comp/DomkitEditor.hx b/hide/comp/DomkitEditor.hx index 3dfd786d..29f1a334 100644 --- a/hide/comp/DomkitEditor.hx +++ b/hide/comp/DomkitEditor.hx @@ -349,6 +349,13 @@ class DomkitChecker extends ScriptEditor.ScriptChecker { } function resolveComp( name : String ) : TypedComponent { + + var rootComp = name; + var index = name.indexOf("."); + if( index >= 0 ) { + rootComp = name.substr(0, index); + name = name.substr(index+1); + } var c = components.get(name); if( c != null ) return c; @@ -356,7 +363,7 @@ class DomkitChecker extends ScriptEditor.ScriptChecker { var dirs : Array = config.get("domkit.components"); if( dirs == null ) dirs = ["ui/comp"]; for( d in dirs ) { - var path = d+"/"+name+".domkit"; + var path = d+"/"+rootComp.split("-").join("_")+".domkit"; var content = try sys.io.File.getContent(ide.getPath(path)) catch( e : Dynamic ) continue; var data = hrt.impl.DomkitViewer.DomkitFile.parse(content); var node = null, params = new Map(); diff --git a/hrt/impl/DomkitViewer.hx b/hrt/impl/DomkitViewer.hx index 0854d13c..4211e77b 100644 --- a/hrt/impl/DomkitViewer.hx +++ b/hrt/impl/DomkitViewer.hx @@ -41,6 +41,16 @@ class DomkitViewer { } } + static function clearImportNames( m : domkit.MarkupParser.Markup ) { + switch( m.kind ) { + case Node(n) if( n != null && n.indexOf(".") >= 0 ): m.kind = Node(n.split(".").pop()); // remove root.name + default: + } + if( m.children != null ) + for( c in m.children ) + clearImportNames(c); + } + public static function loadSource( path : String, pos : Position, fields : Array ) { var name = path.split("/").pop().split("_").join("-"); var dotPos = name.lastIndexOf("."); @@ -104,6 +114,7 @@ class DomkitViewer { } if( hasDynParam ) removeDynParamsRec(m, dynParams); + clearImportNames(m); fields.push({ name : "__CSS",