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:
-rw-r--r--source/blender/blenkernel/intern/font.c2
-rw-r--r--source/blender/editors/curve/editfont.c30
-rw-r--r--source/blender/makesdna/DNA_vfont_types.h2
3 files changed, 18 insertions, 16 deletions
diff --git a/source/blender/blenkernel/intern/font.c b/source/blender/blenkernel/intern/font.c
index c0a60ea6294..47627d09b97 100644
--- a/source/blender/blenkernel/intern/font.c
+++ b/source/blender/blenkernel/intern/font.c
@@ -1146,7 +1146,7 @@ struct chartrans *BKE_text_to_curve(Scene *scene, Object *ob, int mode)
return NULL;
}
- if(mode==0) {
+ if(mode == FO_EDIT) {
/* make nurbdata */
unsigned long cha;
diff --git a/source/blender/editors/curve/editfont.c b/source/blender/editors/curve/editfont.c
index 7177549e69b..ae79c0b0053 100644
--- a/source/blender/editors/curve/editfont.c
+++ b/source/blender/editors/curve/editfont.c
@@ -259,7 +259,9 @@ static void text_update_edited(bContext *C, Scene *scene, Object *obedit, int re
if(obedit->totcol>0)
obedit->actcol= ef->textbufinfo[cu->pos?cu->pos-1:0].mat_nr;
- update_string(cu);
+ if(mode == FO_EDIT)
+ update_string(cu);
+
BKE_text_to_curve(scene, obedit, mode);
if(recalc)
@@ -364,7 +366,7 @@ static int paste_file(bContext *C, ReportList *reports, char *filename)
}
MEM_freeN(strp);
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
return OPERATOR_FINISHED;
}
@@ -747,7 +749,7 @@ static int cut_text_exec(bContext *C, wmOperator *op)
copy_selection(obedit);
kill_selection(obedit, 0);
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
return OPERATOR_FINISHED;
}
@@ -805,7 +807,7 @@ static int paste_text_exec(bContext *C, wmOperator *op)
if(!paste_selection(obedit, op->reports))
return OPERATOR_CANCELLED;
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
return OPERATOR_FINISHED;
}
@@ -846,7 +848,7 @@ static int move_cursor(bContext *C, int type, int select)
Object *obedit= CTX_data_edit_object(C);
Curve *cu= obedit->data;
EditFont *ef= cu->editfont;
- int cursmove= 0;
+ int cursmove= -1;
switch(type) {
case LINE_BEGIN:
@@ -916,7 +918,7 @@ static int move_cursor(bContext *C, int type, int select)
break;
}
- if(!cursmove)
+ if(cursmove == -1)
return OPERATOR_CANCELLED;
if(select == 0) {
@@ -1010,7 +1012,7 @@ static int change_spacing_exec(bContext *C, wmOperator *op)
ef->textbufinfo[cu->pos-1].kern = kern;
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
return OPERATOR_FINISHED;
}
@@ -1055,7 +1057,7 @@ static int change_character_exec(bContext *C, wmOperator *op)
ef->textbuf[cu->pos - 1]= character;
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
return OPERATOR_FINISHED;
}
@@ -1098,7 +1100,7 @@ static int line_break_exec(bContext *C, wmOperator *op)
cu->selstart = cu->selend = 0;
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
return OPERATOR_FINISHED;
}
@@ -1188,7 +1190,7 @@ static int delete_exec(bContext *C, wmOperator *op)
return OPERATOR_CANCELLED;
}
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
return OPERATOR_FINISHED;
}
@@ -1238,7 +1240,7 @@ static int insert_text_exec(bContext *C, wmOperator *op)
MEM_freeN(inserted_utf8);
kill_selection(obedit, 1);
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
return OPERATOR_FINISHED;
}
@@ -1306,12 +1308,12 @@ static int insert_text_invoke(bContext *C, wmOperator *op, wmEvent *evt)
}
kill_selection(obedit, 1);
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
}
else {
inserted_text[0]= ascii;
insert_into_textbuf(obedit, ascii);
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
}
}
else if(val && event == BACKSPACEKEY) {
@@ -1553,7 +1555,7 @@ static int set_case(bContext *C, int ccase)
}
}
- text_update_edited(C, scene, obedit, 1, 0);
+ text_update_edited(C, scene, obedit, 1, FO_EDIT);
return OPERATOR_FINISHED;
}
diff --git a/source/blender/makesdna/DNA_vfont_types.h b/source/blender/makesdna/DNA_vfont_types.h
index 8a96d8574c2..0ea60c732cf 100644
--- a/source/blender/makesdna/DNA_vfont_types.h
+++ b/source/blender/makesdna/DNA_vfont_types.h
@@ -46,7 +46,7 @@ typedef struct VFont {
} VFont;
/* *************** FONT ****************** */
-
+#define FO_EDIT 0
#define FO_CURS 1
#define FO_CURSUP 2
#define FO_CURSDOWN 3