liboperators/OperatorFlipVertical.py:{flipPairs,apply()}: correctly flip flippable text characters.

assets/text/TODO: updated.
This commit is contained in:
Lucio Andrés Illanes Albornoz 2019-09-16 08:13:55 +02:00
parent aef7f629d0
commit 3c0606a390
2 changed files with 14 additions and 4 deletions

View File

@ -24,9 +24,8 @@ Queue:
2) text tool: impl. backspace & enter, update internal brushPos if updated w/ arrow keys
3) text tool: a) honour RTL text flow b) navigating w/ cursor keys c) pasting text
4) scroll down, apply operator to entire canvas, scroll up
5) flip tool: correctly flip chars e.g. \ -> /, etc.
6) underline FUCKING BROKEN _AGAIN_
7) select-related {re,un}do bugs
8) clone selection lag
5) underline FUCKING BROKEN _AGAIN_
6) select-related {re,un}do bugs
7) clone selection lag
vim:ff=dos tw=0

View File

@ -8,12 +8,23 @@ from Operator import Operator
class OperatorFlipVertical(Operator):
name = "Flip"
flipPairs = {
"(":")", ")":"(",
"/":"\\", "\\":"/",
"\[":"]", "]":"\[",
"\{":"\}", "\}":"\{",
"<":">", ">":"<",
"`":"'",
}
#
# apply(self, region)
def apply(self, region):
for numRow in range(len(region)):
region[numRow].reverse()
for numCol in range(len(region[numRow])):
if region[numRow][numCol][3] in self.flipPairs:
region[numRow][numCol][3] = self.flipPairs[region[numRow][numCol][3]]
return region
# __init__(self, *args): initialisation method