}
- /*
- setNSID : function(id)
- {
-
- this.items[0]['|module'] = id;
-
-
- },
-
-
- getType: function() {
- return 'Roo';
- },
-
- */
+
- public override void removeFiles() {
- var html = GLib.Path.get_dirname(this.path) +"/templates/" + name + ".html";
- if (FileUtils.test(html, FileTest.EXISTS)) {
- GLib.FileUtils.remove(html);
- }
- var js = GLib.Path.get_dirname(this.path) +"/" + name + ".html";
- if (FileUtils.test(js, FileTest.EXISTS)) {
- GLib.FileUtils.remove(js);
+ public override void removeFiles() {
+ var html = GLib.Path.get_dirname(this.path) +"/templates/" + name + ".html";
+ if (FileUtils.test(html, FileTest.EXISTS)) {
+ GLib.FileUtils.remove(html);
+ }
+ var js = GLib.Path.get_dirname(this.path) +"/" + name + ".html";
+ if (FileUtils.test(js, FileTest.EXISTS)) {
+ GLib.FileUtils.remove(js);
+ }
}
- }
public override void loadItems() throws GLib.Error // : function(cb, sync) == original was async.
{
- print("load Items!");
+ GLib.debug("load Items!");
if (this.tree != null) {
return;
}
- print("load " + this.path);
+ GLib.debug("load " + this.path);
var pa = new Json.Parser();
pa.load_from_file(this.path);
this.tree.loadFromJson(tree_base, int.parse(bjs_version_str));
}
this.loaded = true;
-
+ this.toSource(); // force it to number the lines...
}
- /**
- * old code had broken xtypes and used arrays differently,
- * this code should try and clean it up..
- *
- *
- * /
- fixItems : function(node, fixthis)
- {
- if (fixthis) {
- // fix xtype.
- var fn = this.guessName(node);
- //print("guessname got " + fn);
- if (fn) {
- var bits = fn.split('.');
- node.xtype = bits.pop();
- node['|xns'] = bits.join('.');
-
- }
- // fix array???
-
-
- }
- if (!node.items || !node.items.length) {
- return;
- }
- var _this = this;
- var aitems = [];
- var nitems = [];
- node.items.forEach(function(i) {
-
-
-
- _this.fixItems(i, true);
- if (i.xtype == 'Array') {
- aitems.push(i);
- return;
- }
- nitems.push(i);
- });
- node.items = nitems;
-
- if (!aitems.length) {
- return;
- }
-
- aitems.forEach(function(i) {
-
- if (!i.items || !i.items.length) {
- return;
- }
- var prop = i['*prop'] + '[]';
- // colModel to cm?
- i.items.forEach(function(c) {
- c['*prop'] = prop;
- node.items.push(c);
-
- });
-
-
- });
-
-
- // array handling..
-
-
-
-
-
- },
- */
+
public override void save()
- {
+ {
- print("--- JsRender.Roo.save");
- print("save() - reset transStrings\n");
+ GLib.debug("--- JsRender.Roo.save");
+ GLib.debug("save() - reset transStrings\n");
this.transStrings = new Gee.HashMap<string,string>();
this.findTransStrings(this.tree);
- }
+ }
{
var top = this.tree.fqn();
- print ("TOP = " + top + "\n" );
- if (top.index_of("Roo.bootstrap.") < 0 &&
- top.index_of("Roo.mailer.") < 0
- ) {
- return;
- }
+ GLib.debug ("TOP = " + top + "\n" );
+ if (top.index_of("Roo.bootstrap.") < 0 &&
+ top.index_of("Roo.mailer.") < 0
+ ) {
+ return;
+ }
//now write the js file..
print("Skip save - templates folder does not exist : %s\n", targetdir);
return;
}
- print("SAVE HTML -- %s\n%s\n",targetdir + "/" + bn, html);
+ //print("SAVE HTML -- %s\n%s\n",targetdir + "/" + bn, html);
try {
this.writeFile(targetdir + "/" + bn , html);
} catch (FileError e ) {
if (kflag == "$") {
continue;
}
+ // skip cms-id nodes...
+ if (kname == "html" && node.has("cms-id")) {
+ continue;
+ }
+
var str = iter.get_value();
if (this.doubleStringProps.index_of(kname) > -1) {
- print("flag=%s type=%s name=%s : %s\n", kflag,ktype,kname,str);
+ GLib.debug("flag=%s type=%s name=%s : %s\n", kflag,ktype,kname,str);
this.transStrings.set(str,
- GLib.Checksum.compute_for_string (ChecksumType.MD5, str)
+ GLib.Checksum.compute_for_string (ChecksumType.MD5, str.strip())
);
continue;
}
if (ktype.down() == "string" && kname[0] == '_') {
- print("flag=%s type=%s name=%s : %s\n", kflag,ktype,kname,str);
+ GLib.debug("flag=%s type=%s name=%s : %s\n", kflag,ktype,kname,str);
this.transStrings.set(str,
- GLib.Checksum.compute_for_string (ChecksumType.MD5, str)
+ GLib.Checksum.compute_for_string (ChecksumType.MD5, str.strip())
);
continue;
}
public string transStringsToJs()
{
- print("Roo.transStringsToJs()\n");
+ GLib.debug("Roo.transStringsToJs()\n");
if (this.transStrings.size < 1) {
- print("Roo.transStringsToJs() size < 1?\n");
+ GLib.debug("Roo.transStringsToJs() size < 1?\n");
return "";
}
*
*
*/
+ public override string toSourceCode()
+ {
+ this.transStrings = new Gee.HashMap<string,string>();
+ this.findTransStrings(this.tree);
+ return this.toSource();
+ }
+
public override string toSource()
{
// dump the file tree back out to a string.
if (top == null) {
return "";
}
- // get the translatable strings..
+ // get the translatable strings.. = we reload them again so calling methods get the right data...
+ this.transStrings = new Gee.HashMap<string,string>();
+ this.findTransStrings(this.tree);
+
+
if (top.contains("Dialog")) {
return this.toSourceDialog(false);
}
return "";
}
var x = new NodeToJs(this.tree, this.doubleStringProps, pad, null);
+ x.renderer = this;
x.cur_line = prefix.split("\n").length;
var ret = x.munge();