Commit 8295f682 authored by Koichi Yasuoka's avatar Koichi Yasuoka
Browse files

bug fix on options of select

parent 0285aa2c
Loading
Loading
Loading
Loading
+40 −12
Original line number Diff line number Diff line
// CoNLL-U SVG Edit by Koichi Yasuoka, July 13, 2018.
// CoNLL-U SVG Edit by Koichi Yasuoka, July 16, 2018.
// "conllusvgview.js" is needed.
"use strict";
conllusvg.edit=function(svg,textid,deprelid,uposid,xposid){
@@ -11,20 +11,36 @@ conllusvg.edit=function(svg,textid,deprelid,uposid,xposid){
  }
  else
    conllusvg.rewrite(textid);
  if(deprelid!=null)
  if(deprelid!=null){
    c.deprel=document.getElementById(deprelid).cloneNode(true);
    for(i in c.deprel.options){
      if(c.deprel.options[i]!=null){
	t=c.deprel.options[i].value;
	if(t==null||t==""||t==c.deprel.options[i].textContent)
 	  c.deprel.options[i].value="conllusvg.setDeprel";
      }
    }
  }
  else{
    g=document.createElement("select");
    t=["acl","advcl","advmod","amod","appos","aux","case","cc","ccomp","clf","compound","conj","cop","csubj","dep","det","discourse","dislocated","expl","fixed","flat","goeswith","iobj","list","mark","nmod","nsubj","nummod","obj","obl","orphan","parataxis","punct","reparandum","vocative","xcomp"];
    for(i=0;i<t.length;i++)
      g.add(new Option(t[i]));
      g.add(new Option(t[i]),"conllusvg.setDeprel");
    g.style.position="absolute";
    g.style.visibility="hidden";
    g.size=6;
    c.deprel=g;
  }
  if(uposid!=null)
  if(uposid!=null){
    c.upos=document.getElementById(uposid).cloneNode(true);
    for(i in c.upos.options){
      if(c.upos.options[i]!=null){
	t=c.upos.options[i].value;
	if(t==null||t==""||t==c.deprel.options[i].textContent)
	  c.upos.options[i].value="conllusvg.setUpos";
      }
    }
  }
  else{
    g=document.createElement("select");
    g.add(new Option("root","conllusvg.rootLink"));
@@ -312,24 +328,28 @@ conllusvg.clickDeprel=function(textid){
  var ix=g.selectedIndex;
  var t;
  if(ix>=0){
    t=g.options[ix].textContent;
    ix=c.event.index;
    c.nodes[ix].deprel=c.links[ix].deprel=t;
    conllusvg.insertTextline(textid,c.nodes[ix].textlineid,8,t);
    t=g.options[ix].value;
    if(t==null||t=="")
      t="conllusvg.setDeprel";
    conllusvg.timer=setTimeout("clearTimeout(conllusvg.timer);"+t+"('"+textid+"','"+g.options[ix].textContent+"')",0);
  }
  g.removeEventListener("click",conllusvg.onClickSelect);
  g.removeEventListener("keydown",conllusvg.onKeyDownSelect);
  document.body.removeChild(g);
  c.event.select=null;
  conllusvg.writeLinksSVG(textid);
  c.event.redLink=null;
}

conllusvg.clickUpos=function(textid){
  var c=conllusvg.main[textid];
  var g=c.event.select;
  var ix=g.selectedIndex;
  if(ix>=0)
    conllusvg.timer=setTimeout("clearTimeout(conllusvg.timer);"+g.options[ix].value+"('"+textid+"','"+g.options[ix].textContent+"')",0);
  var t;
  if(ix>=0){
    t=g.options[ix].value;
    if(t==null||t=="")
      t="conllusvg.setUpos";
    conllusvg.timer=setTimeout("clearTimeout(conllusvg.timer);"+t+"('"+textid+"','"+g.options[ix].textContent+"')",0);
  }
  g.removeEventListener("click",conllusvg.onClickSelect);
  g.removeEventListener("keydown",conllusvg.onKeyDownSelect);
  document.body.removeChild(g);
@@ -552,6 +572,14 @@ conllusvg.redArrowSVG=function(textid){
    c.event.redArrow.setAttribute("d","M "+c.event.startX+" "+c.event.startY+" L "+x+" "+y);
  c.event.redTriangle.setAttribute("transform","matrix("+(j/k)+" "+(-i/k)+" "+(i/k)+" "+(j/k)+" "+x+" "+y+")");
}
conllusvg.setDeprel=function(textid,t){
  var c=conllusvg.main[textid];
  var ix=c.event.index;
  c.nodes[ix].deprel=c.links[ix].deprel=t;
  conllusvg.insertTextline(textid,c.nodes[ix].textlineid,8,t);
  conllusvg.writeLinksSVG(textid);
  c.event.redLink=null;
}
conllusvg.setUpos=function(textid,t){
  var c=conllusvg.main[textid];
  var ix=c.event.index;
+15 −15
Original line number Diff line number Diff line
<!DOCTYPE html><head><meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>CoNLL-U SVG Editor for 漢文 by 安岡孝一, July 15, 2018.</title>
<title>CoNLL-U SVG Editor for 漢文 by 安岡孝一, July 16, 2018.</title>
<script src="conllusvgview.js"></script>
<script src="conllusvgedit.js"></script>
<script src="conllusvgload.js"></script>
@@ -252,20 +252,20 @@ conllusvg.kanbun.divideForm=function(textid,z){
<select size=6 id="upos" style="position:absolute; visibility:hidden">
<option value="conllusvg.rootLink">root</option>
<option value="conllusvg.kanbun.consultCHISE">訊CHISE</option>
<option value="conllusvg.setUpos">NOUN</option>
<option value="conllusvg.setUpos">PROPN</option>
<option value="conllusvg.setUpos">PRON</option>
<option value="conllusvg.setUpos">NUM</option>
<option value="conllusvg.setUpos">VERB</option>
<option value="conllusvg.setUpos">ADP</option>
<option value="conllusvg.setUpos">ADV</option>
<option value="conllusvg.setUpos">AUX</option>
<option value="conllusvg.setUpos">SCONJ</option>
<option value="conllusvg.setUpos">CCONJ</option>
<option value="conllusvg.setUpos">PART</option>
<option value="conllusvg.setUpos">INTJ</option>
<option value="conllusvg.setUpos">SYM</option>
<option value="conllusvg.setUpos">PUNCT</option>
<option>NOUN</option>
<option>PROPN</option>
<option>PRON</option>
<option>NUM</option>
<option>VERB</option>
<option>ADP</option>
<option>ADV</option>
<option>AUX</option>
<option>SCONJ</option>
<option>CCONJ</option>
<option>PART</option>
<option>INTJ</option>
<option>SYM</option>
<option>PUNCT</option>
<option value="conllusvg.deleteNode">削除</option>
<option value="conllusvg.duplicateNode">複製</option>
<option value="conllusvg.kanbun.connectForm">連接</option>