X-Git-Url: http://source.jalview.org/gitweb/?p=jalviewjs.git;a=blobdiff_plain;f=site%2Fj2s%2Fjalview%2Fcommands%2FChangeCaseCommand.js;fp=site%2Fj2s%2Fjalview%2Fcommands%2FChangeCaseCommand.js;h=0ebfc96568a3f143681d0fde112e427c2d5c0eaf;hp=fb085d662a6238a3532ea518d9dfe36fc7a34661;hb=b9b7a352eee79b7764c3b09c9d19663075061d8c;hpb=7301a2415adab88038b291fc54caeeb3a5a47a44 diff --git a/site/j2s/jalview/commands/ChangeCaseCommand.js b/site/j2s/jalview/commands/ChangeCaseCommand.js index fb085d6..0ebfc96 100644 --- a/site/j2s/jalview/commands/ChangeCaseCommand.js +++ b/site/j2s/jalview/commands/ChangeCaseCommand.js @@ -1,74 +1,74 @@ -Clazz.declarePackage ("jalview.commands"); -Clazz.load (["jalview.commands.CommandI"], "jalview.commands.ChangeCaseCommand", ["java.lang.StringBuffer"], function () { -c$ = Clazz.decorateAsClass (function () { -this.description = null; -this.caseChange = -1; -this.seqs = null; -this.regions = null; -Clazz.instantialize (this, arguments); -}, jalview.commands, "ChangeCaseCommand", null, jalview.commands.CommandI); -Clazz.makeConstructor (c$, -function (description, seqs, regions, caseChange) { -this.description = description; -this.seqs = seqs; -this.regions = regions; -this.caseChange = caseChange; -this.doCommand (null); -}, "~S,~A,java.util.List,~N"); -Clazz.overrideMethod (c$, "getDescription", -function () { -return this.description; -}); -Clazz.overrideMethod (c$, "getSize", -function () { -return 1; -}); -Clazz.overrideMethod (c$, "doCommand", -function (views) { -this.changeCase (true); -}, "~A"); -Clazz.overrideMethod (c$, "undoCommand", -function (views) { -this.changeCase (false); -}, "~A"); -Clazz.defineMethod (c$, "changeCase", -function (doCommand) { -var sequence; -var start; -var end; -var nextChar; -for (var r, $r = this.regions.iterator (); $r.hasNext () && ((r = $r.next ()) || true);) { -start = r[0]; -for (var s = 0; s < this.seqs.length; s++) { -sequence = this.seqs[s].getSequenceAsString (); -var newSeq = new StringBuffer (); -if (r[1] > sequence.length) { -end = sequence.length; -} else { -end = r[1]; -}if (start > 0) { -newSeq.append (sequence.substring (0, start)); -}if ((this.caseChange == jalview.commands.ChangeCaseCommand.TO_UPPER && doCommand) || (this.caseChange == jalview.commands.ChangeCaseCommand.TO_LOWER && !doCommand)) { -newSeq.append (sequence.substring (start, end).toUpperCase ()); -} else if ((this.caseChange == jalview.commands.ChangeCaseCommand.TO_LOWER && doCommand) || (this.caseChange == jalview.commands.ChangeCaseCommand.TO_UPPER && !doCommand)) { -newSeq.append (sequence.substring (start, end).toLowerCase ()); -} else { -for (var c = start; c < end; c++) { -nextChar = sequence.charAt (c); -if ('a' <= nextChar && nextChar <= 'z') { -nextChar = String.fromCharCode (nextChar.charCodeAt (0) - (32)); -} else if ('A' <= nextChar && nextChar <= 'Z') { -nextChar = String.fromCharCode (nextChar.charCodeAt (0) + (32)); -}newSeq.append (nextChar); -} -}if (end < sequence.length) { -newSeq.append (sequence.substring (end)); -}this.seqs[s].setSequence (newSeq.toString ()); -} -} -}, "~B"); -Clazz.defineStatics (c$, -"TO_LOWER", 0, -"TO_UPPER", 1, -"TOGGLE_CASE", 2); -}); +Clazz.declarePackage ("jalview.commands"); +Clazz.load (["jalview.commands.CommandI"], "jalview.commands.ChangeCaseCommand", ["java.lang.StringBuffer"], function () { +c$ = Clazz.decorateAsClass (function () { +this.description = null; +this.caseChange = -1; +this.seqs = null; +this.regions = null; +Clazz.instantialize (this, arguments); +}, jalview.commands, "ChangeCaseCommand", null, jalview.commands.CommandI); +Clazz.makeConstructor (c$, +function (description, seqs, regions, caseChange) { +this.description = description; +this.seqs = seqs; +this.regions = regions; +this.caseChange = caseChange; +this.doCommand (null); +}, "~S,~A,java.util.List,~N"); +Clazz.overrideMethod (c$, "getDescription", +function () { +return this.description; +}); +Clazz.overrideMethod (c$, "getSize", +function () { +return 1; +}); +Clazz.overrideMethod (c$, "doCommand", +function (views) { +this.changeCase (true); +}, "~A"); +Clazz.overrideMethod (c$, "undoCommand", +function (views) { +this.changeCase (false); +}, "~A"); +Clazz.defineMethod (c$, "changeCase", +function (doCommand) { +var sequence; +var start; +var end; +var nextChar; +for (var r, $r = this.regions.iterator (); $r.hasNext () && ((r = $r.next ()) || true);) { +start = r[0]; +for (var s = 0; s < this.seqs.length; s++) { +sequence = this.seqs[s].getSequenceAsString (); +var newSeq = new StringBuffer (); +if (r[1] > sequence.length) { +end = sequence.length; +} else { +end = r[1]; +}if (start > 0) { +newSeq.append (sequence.substring (0, start)); +}if ((this.caseChange == jalview.commands.ChangeCaseCommand.TO_UPPER && doCommand) || (this.caseChange == jalview.commands.ChangeCaseCommand.TO_LOWER && !doCommand)) { +newSeq.append (sequence.substring (start, end).toUpperCase ()); +} else if ((this.caseChange == jalview.commands.ChangeCaseCommand.TO_LOWER && doCommand) || (this.caseChange == jalview.commands.ChangeCaseCommand.TO_UPPER && !doCommand)) { +newSeq.append (sequence.substring (start, end).toLowerCase ()); +} else { +for (var c = start; c < end; c++) { +nextChar = sequence.charAt (c); +if ('a' <= nextChar && nextChar <= 'z') { +nextChar = String.fromCharCode (nextChar.charCodeAt (0) - (32)); +} else if ('A' <= nextChar && nextChar <= 'Z') { +nextChar = String.fromCharCode (nextChar.charCodeAt (0) + (32)); +}newSeq.append (nextChar); +} +}if (end < sequence.length) { +newSeq.append (sequence.substring (end)); +}this.seqs[s].setSequence (newSeq.toString ()); +} +} +}, "~B"); +Clazz.defineStatics (c$, +"TO_LOWER", 0, +"TO_UPPER", 1, +"TOGGLE_CASE", 2); +});