Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2014-05-15 11:27:06 +0400
committerCampbell Barton <ideasman42@gmail.com>2014-05-15 11:43:27 +0400
commite5b8d84613f3aa808adf275ea3e0dbec2d484915 (patch)
tree90aeaf2a7513995ae6acadca331ded6aa5c5acb4 /source/blender/blenkernel/intern/font.c
parentac9eaf9c91cf460d3530b09615c911ed40856f12 (diff)
Fix T40204: x-offset textbox failed with center/justify/flush
Diffstat (limited to 'source/blender/blenkernel/intern/font.c')
-rw-r--r--source/blender/blenkernel/intern/font.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/font.c b/source/blender/blenkernel/intern/font.c
index 35328a88360..0b707b29d02 100644
--- a/source/blender/blenkernel/intern/font.c
+++ b/source/blender/blenkernel/intern/font.c
@@ -815,7 +815,7 @@ makebreak:
}
}
else if (cu->spacemode == CU_MIDDLE) {
- for (i = 0; i < lnr; i++) linedata[i] = (linedata3[i] - linedata[i]) / 2;
+ for (i = 0; i < lnr; i++) linedata[i] = ((linedata3[i] - linedata[i]) + cu->xof) / 2;
for (i = 0; i <= slen; i++) {
ct->xof += linedata[ct->linenr];
ct++;
@@ -824,7 +824,7 @@ makebreak:
else if ((cu->spacemode == CU_FLUSH) && (cu->tb[0].w != 0.0f)) {
for (i = 0; i < lnr; i++)
if (linedata2[i] > 1)
- linedata[i] = (linedata3[i] - linedata[i]) / (linedata2[i] - 1);
+ linedata[i] = ((linedata3[i] - linedata[i]) + cu->xof) / (linedata2[i] - 1);
for (i = 0; i <= slen; i++) {
for (j = i; (!ELEM3(mem[j], '\0', '\n', '\r')) && (chartransdata[j].dobreak == 0) && (j < slen); j++) {
/* do nothing */
@@ -849,7 +849,8 @@ makebreak:
if ((mem[j] != '\r') && (mem[j] != '\n') &&
((chartransdata[j].dobreak != 0)))
{
- if (mem[i] == ' ') curofs += (linedata3[ct->linenr] - linedata[ct->linenr]) / linedata4[ct->linenr];
+ if (mem[i] == ' ')
+ curofs += ((linedata3[ct->linenr] - linedata[ct->linenr]) + cu->xof) / linedata4[ct->linenr];
ct->xof += curofs;
}
if (mem[i] == '\n' || mem[i] == '\r' || chartransdata[i].dobreak) curofs = 0;