|
13 | 13 | _CHARS = ( |
14 | 14 | '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', |
15 | 15 | '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', |
16 | | - ' ', '!', '"', '#', '$', '%', '&', "'", '(', ')', '*', '+', ',', '-', '.', '/', |
17 | | - '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?', |
| 16 | + ' ', '!', '"', '#', '$', '%', '&', ''', '(', ')', '*', '+', ',', '-', '.', '/', |
| 17 | + '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?', |
18 | 18 | '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', |
19 | 19 | 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', |
20 | 20 | '`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', |
@@ -58,6 +58,10 @@ def loadHexData(self, data): |
58 | 58 | if lines: |
59 | 59 | if len(lines[-1]) != 16: |
60 | 60 | lines[-1] += [' '] * (16 - len(lines[-1])) |
61 | | - finalHexData = 'Offset 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F Decoded Text\n' |
62 | | - finalHexData += '\n'.join(f'{index:08X} {" ".join(line)} {rawDataLines[index]}' for index, line in enumerate(lines)) |
63 | | - self.ui.hexViewer.setPlainText(finalHexData) |
| 61 | + |
| 62 | + # First setup the start of the data. |
| 63 | + finalHexData = '<html><head><style>span { color: #0000AA; }</style></head><body>' |
| 64 | + finalHexData += '<span>Offset 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F Decoded Text</span>\n<br>'.replace(' ', ' ') |
| 65 | + finalHexData += '<br>\n'.join(f'<span>{index:08X}</span> {" ".join(line)} {rawDataLines[index]}' for index, line in enumerate(lines)).replace(' ', ' ') |
| 66 | + finalHexData += '</body></html>' |
| 67 | + self.ui.hexViewer.setHtml(finalHexData) |
0 commit comments