﻿var HiraganaInput = Class.create({
	start:function(event,code){

		if(code ==8){
			if(mainspan.innerHTML.length==1){
				finalText(event,true);
				return false;
			}
			caretOffset--;
			return true;
		}
		if(code ==38 || code==40){//space
			cancelEvent(event);
			return false;
		}
		if(code ==37){
			if(caretOffset - 1 >=0){
				caretOffset--;
			}else{
				cancelEvent(event);
			}
			return false;
		}
		if(code ==39){
			if(caretOffset + 1 <= mainspan.innerHTML.length){
				caretOffset++;
			}else{
				cancelEvent(event);
			}
			return false;
		}
		if(code ==13){//EnterKey
			mainspan.setStyle({"borderBottomStyle":"none"});
			finalText(event);
			return false;
		}
		if(code ==32){//space
			this._trans();
			cancelEvent(event);
			return false;
		}
		var obj = Roma.prototype.str(mainspan.innerHTML,char,caretOffset);
		if(!obj) return true;
		mainspan.innerHTML=obj.text;
		caretOffset = obj.offset;
		atachCaretPos(mainspan,obj.offset);
		cancelEvent(event);

	},
	_trans:function(){
		var trans = new transserverClass();
		trans.trans(mainspan.innerHTML,function(){
			var i=0;
			while(trans.getSegmentText(i)){
				myDesign.elms[i]= new elm(trans.getCandidateList(i)[0],trans.getSegmentText(i),trans.getCandidateList(i));
				i++;
			}
			mainspan.innerHTML= "";
			mainspan.setStyle({"borderBottomStyle":"none"});
			mainspan.appendChild(designTextToDivElement(myDesign));
			phase="plainControl";
		},"all");
	}
});
var oHiraganaInput = new HiraganaInput();