diff --git a/src/main/java/edu/cvut/fit/kw/vmm/frontend/OutputPageHandler.java b/src/main/java/edu/cvut/fit/kw/vmm/frontend/OutputPageHandler.java index c610c5b1fdd7a3e0f9d253196c7b7a2879c63023..3193d49627c38bacb2e6445c14c83a4940e6a117 100644 --- a/src/main/java/edu/cvut/fit/kw/vmm/frontend/OutputPageHandler.java +++ b/src/main/java/edu/cvut/fit/kw/vmm/frontend/OutputPageHandler.java @@ -94,7 +94,7 @@ public class OutputPageHandler implements HttpHandler { } for(int i = foundSequences.size() - 1; i >= 0; i--) { AlignedSequencePair pair = foundSequences.get(i); - response += "<html><head></head><body style=\"font-family:monospace\">" + pair.getSecondSequence().getAnimalName() + "<br>"; + response += "<html><head><style>.outputs{overflow-x:scroll}</style></head><body style=\"font-family:monospace\">" + pair.getSecondSequence().getAnimalName() + "<br>"; System.out.println("Animal: " + pair.getSecondSequence().getAnimalName()); printSolution(pair.getAlignment(), pair.getFirstSequence().getSequence(), pair.getSecondSequence().getSequence()); @@ -134,20 +134,23 @@ public class OutputPageHandler implements HttpHandler { for(int i = 0; i < Integer.min(str0Pointer, str1Pointer); i++) { res0 += str0.charAt(i); res1 += str1.charAt(i); - verticalLines += "."; + verticalLines += " "; } for(int i = Integer.min(str0Pointer, str1Pointer); i < str0Pointer; i++) { res0 += str0.charAt(i); res1 += "-"; - verticalLines += "."; + verticalLines += " "; } for(int i = Integer.min(str0Pointer, str1Pointer); i < str1Pointer; i++) { res0 += "-"; res1 += str1.charAt(i); - verticalLines += "."; + verticalLines += " "; } // ACTUAL ALIGNED SEQUENCE for(StringOperation operation:operations) { + res0 += "<td>"; + res1 += "<td>"; + verticalLines += "<td>"; switch (operation) { case COPY: res0 += str0.charAt(str0Pointer); @@ -159,48 +162,73 @@ public class OutputPageHandler implements HttpHandler { case REPLACE: res0 += str0.charAt(str0Pointer); res1 += str1.charAt(str1Pointer); - verticalLines += "."; + verticalLines += " "; str0Pointer++; str1Pointer++; break; case ADD: res0 += "-"; res1 += str1.charAt(str1Pointer); - verticalLines += "."; + verticalLines += " "; str1Pointer++; break; case DELETE: res0 += str0.charAt(str0Pointer); res1 += "-"; - verticalLines += "."; + verticalLines += " "; str0Pointer++; } + res0 += "</td>"; + res1 += "</td>"; + verticalLines += "</td>"; } // PRINT THE PART AFTER ALIGNED SEQUENCE while(str0Pointer < str0.length() && str1Pointer < str1.length()) { + res0 += "<td>"; + res1 += "<td>"; + verticalLines += "<td>"; res0 += str0.charAt(str0Pointer); res1 += str1.charAt(str1Pointer); - verticalLines += "."; + verticalLines += " "; str0Pointer++; str1Pointer++; + res0 += "</td>"; + res1 += "</td>"; + verticalLines += "</td>"; } while(str0Pointer < str0.length()) { + res0 += "<td>"; + res1 += "<td>"; + verticalLines += "<td>"; res0 += str0.charAt(str0Pointer); res1 += "-"; - verticalLines += "."; + verticalLines += " "; str0Pointer++; + res0 += "</td>"; + res1 += "</td>"; + verticalLines += "</td>"; } while(str1Pointer < str1.length()) { + res0 += "<td>"; + res1 += "<td>"; + verticalLines += "<td>"; res0 += "-"; res1 += str1.charAt(str1Pointer); - verticalLines += "."; + verticalLines += " "; str1Pointer++; + res0 += "</td>"; + res1 += "</td>"; + verticalLines += "</td>"; } // PRINT IT TO STDOUT - + + response += "<div class=\"outputs\"><table><tr>"; response += res0 + "<br>"; + response += "<tr></tr>"; response += verticalLines + "<br>"; + response += "<tr></tr>"; response += res1 + "<br>"; + response += "</tr></table></div>"; System.out.println(res0); System.out.println(verticalLines);