for (var keystring in mapdef)
add_keystring (this.keymap, keystring, mapdef[keystring]);
}
+
+ this.load_map_node = function ()
+ {
+ this.keymap = new Array ();
+ var maps = this.body.getElementsByTagName ('map');
+ var map = maps[0];
+ var rules = map.getElementsByTagName ('rule');
+ for (var i = 0; i < rules.length; i++)
+ {
+ var rule = rules[i];
+ var keyseq_elm = MIM.first_element (rule);
+ var keystring = keyseq_elm.attributes[0].nodeValue;
+ var insert_elm = MIM.next_element (rule);
+ var str = insert_elm.attributes[0].nodeValue;
+ add_keystring (this.keymap, keystring, str);
+ }
+ }
};
MIM.error_return = function (msg, ret)
for (var i = 0; i < states.length; i++)
if (! MIM.check_state (im, states[i]))
MIM.error_return ('Unsupported directive in state', false);
+ im.load_map_node ();
return true;
}
if (! obj)
alert ("XMLHttpRequest not supported");
- if (true)
- {
- obj.open ('GET', im.url, false);
- im.status = 1; /* loading */
+ obj.open ('GET', 'latn-post.mimx', false);
+ obj.overrideMimeType ('text/xml');
obj.send ("");
- try {
- eval (obj.responseText);
- im.status = 2; /* loaded */
- } catch (e) {
- alert ("load error:" + e.message + " at " + e.lineNumber
- + " " + obj.responseText);
- im.status = -1; /* load fail */
- };
- }
-
- if (true) {
- obj.open ('GET', 'latn-post.mimx', false);
- obj.overrideMimeType ('text/xml');
- obj.send ("");
- im.body = obj.responseXML;
- document.AnXml = im.body;
- if (! MIM.parse (im))
- {
- alert (im.parse_error);
- return false;
- }
- } else {
- var doc = document.implementation.createDocument ("", "", null);
- doc.async = false;
- doc.contentType = "text/xml";
- doc.load ('latn-post.mimx');
- document.AnXml = doc;
- im.body = doc;
- MIM.parse (im);
- }
- return im;
+ im.body = obj.responseXML;
+ document.AnXml = im.body;
+ if (MIM.parse (im))
+ return im;
+ alert (im.parse_error);
+ return false;
};
MIM.load = function (im)