Fix T48426: Use same length for all header message strings.
authorBastien Montagne <montagne29@wanadoo.fr>
Sat, 14 May 2016 08:00:52 +0000 (10:00 +0200)
committerBastien Montagne <montagne29@wanadoo.fr>
Sat, 14 May 2016 08:00:52 +0000 (10:00 +0200)
Some languages like Chinese or Japanese take three or four bytes per char...

Also fixed some missing translation markers for UI header messages.

16 files changed:
source/blender/editors/animation/anim_markers.c
source/blender/editors/armature/pose_lib.c
source/blender/editors/armature/pose_slide.c
source/blender/editors/gpencil/gpencil_brush.c
source/blender/editors/mesh/editmesh_bevel.c
source/blender/editors/mesh/editmesh_inset.c
source/blender/editors/mesh/editmesh_loopcut.c
source/blender/editors/screen/area.c
source/blender/editors/sculpt_paint/paint_image.c
source/blender/editors/space_node/node_relationships.c
source/blender/editors/space_sequencer/sequencer_edit.c
source/blender/editors/space_view3d/view3d_ruler.c
source/blender/editors/transform/transform.c
source/blender/editors/uvedit/uvedit_smart_stitch.c
source/blender/editors/uvedit/uvedit_unwrap_ops.c
source/blender/windowmanager/intern/wm_operators.c

index 40376c38c3b61297d538b8941b063b28a80c1ad4..823cde75334c1c00caa62546ddabc9bdc7cc8797 100644 (file)
@@ -39,6 +39,8 @@
 #include "BLI_math_base.h"
 #include "BLI_utildefines.h"
 
+#include "BLT_translation.h"
+
 #include "BKE_context.h"
 #include "BKE_fcurve.h"
 #include "BKE_main.h"
@@ -685,7 +687,7 @@ static void ed_marker_move_update_header(bContext *C, wmOperator *op)
        MarkerMove *mm = op->customdata;
        TimeMarker *marker, *selmarker = NULL;
        const int offs = RNA_int_get(op->ptr, "frames");
-       char str[256];
+       char str[UI_MAX_DRAW_STR];
        char str_offs[NUM_STR_REP_LEN];
        int totmark;
        const bool use_time = ed_marker_move_use_time(mm);
@@ -710,14 +712,14 @@ static void ed_marker_move_update_header(bContext *C, wmOperator *op)
        if (totmark == 1 && selmarker) {
                /* we print current marker value */
                if (use_time) {
-                       BLI_snprintf(str, sizeof(str), "Marker %.2f offset %s", FRA2TIME(selmarker->frame), str_offs);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Marker %.2f offset %s"), FRA2TIME(selmarker->frame), str_offs);
                }
                else {
-                       BLI_snprintf(str, sizeof(str), "Marker %d offset %s", selmarker->frame, str_offs);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Marker %d offset %s"), selmarker->frame, str_offs);
                }
        }
        else {
-               BLI_snprintf(str, sizeof(str), "Marker offset %s", str_offs);
+               BLI_snprintf(str, sizeof(str), IFACE_("Marker offset %s"), str_offs);
        }
 
        ED_area_headerprint(CTX_wm_area(C), str);
index a984e5d1ccdab397d5c672591529fb7e309e31df..dca9aa3e44682e772c3e22f4adae852602e4894e 100644 (file)
@@ -762,7 +762,7 @@ typedef struct tPoseLib_PreviewData {
        char searchstr[64];     /* (Part of) Name to search for to filter poses that get shown */
        char searchold[64];     /* Previously set searchstr (from last loop run), so that we can detected when to rebuild searchp */
        
-       char headerstr[200];    /* Info-text to print in header */
+       char headerstr[UI_MAX_DRAW_STR];    /* Info-text to print in header */
 } tPoseLib_PreviewData;
 
 /* defines for tPoseLib_PreviewData->state values */
@@ -1016,7 +1016,7 @@ static void poselib_preview_apply(bContext *C, wmOperator *op)
        if (pld->state == PL_PREVIEW_RUNNING) {
                if (pld->flag & PL_PREVIEW_SHOWORIGINAL) {
                        BLI_strncpy(pld->headerstr,
-                                   "PoseLib Previewing Pose: [Showing Original Pose] | Use Tab to start previewing poses again",
+                                   IFACE_("PoseLib Previewing Pose: [Showing Original Pose] | Use Tab to start previewing poses again"),
                                    sizeof(pld->headerstr));
                        ED_area_headerprint(pld->sa, pld->headerstr);
                }
@@ -1041,16 +1041,16 @@ static void poselib_preview_apply(bContext *C, wmOperator *op)
                        BLI_strncpy(markern, pld->marker ? pld->marker->name : "No Matches", sizeof(markern));
 
                        BLI_snprintf(pld->headerstr, sizeof(pld->headerstr),
-                                    "PoseLib Previewing Pose: Filter - [%s] | "
-                                    "Current Pose - \"%s\"  | "
-                                    "Use ScrollWheel or PageUp/Down to change",
+                                    IFACE_("PoseLib Previewing Pose: Filter - [%s] | "
+                                           "Current Pose - \"%s\"  | "
+                                           "Use ScrollWheel or PageUp/Down to change"),
                                     tempstr, markern);
                        ED_area_headerprint(pld->sa, pld->headerstr);
                }
                else {
                        BLI_snprintf(pld->headerstr, sizeof(pld->headerstr),
-                                    "PoseLib Previewing Pose: \"%s\"  | "
-                                    "Use ScrollWheel or PageUp/Down to change",
+                                    IFACE_("PoseLib Previewing Pose: \"%s\"  | "
+                                           "Use ScrollWheel or PageUp/Down to change"),
                                     pld->marker->name);
                        ED_area_headerprint(pld->sa, pld->headerstr);
                }
index 16ba1483e38116953f92872275b3da58e388190a..9ef46c63f0f5a443bcd47de2b81df0721378b27a 100644 (file)
@@ -51,6 +51,8 @@
 #include "WM_api.h"
 #include "WM_types.h"
 
+#include "UI_interface.h"
+
 #include "ED_armature.h"
 #include "ED_keyframes_draw.h"
 #include "ED_markers.h"
@@ -544,7 +546,7 @@ static void pose_slide_reset(tPoseSlideOp *pso)
 /* draw percentage indicator in header */
 static void pose_slide_draw_status(tPoseSlideOp *pso)
 {
-       char status_str[256];
+       char status_str[UI_MAX_DRAW_STR];
        char mode_str[32];
        
        switch (pso->mode) {
index 561a8e4b61ca19deb5619283934edc2fc02b557a..df05397258c44e4e87b6c080fc2e4928694bb4b3 100644 (file)
@@ -906,7 +906,7 @@ static void gpencil_toggle_brush_cursor(bContext *C, bool enable)
 static void gpsculpt_brush_header_set(bContext *C, tGP_BrushEditData *gso)
 {
        const char *brush_name = NULL;
-       char str[256] = "";
+       char str[UI_MAX_DRAW_STR] = "";
        
        RNA_enum_name(rna_enum_gpencil_sculpt_brush_items, gso->brush_type, &brush_name);
        
index 37e9a0edd00cfa5f6d4613a1f3761b011e3d5ed8..242cbf79a83ffe8a13bd4fe502d98da6ac6e8cd6 100644 (file)
@@ -44,6 +44,8 @@
 #include "WM_api.h"
 #include "WM_types.h"
 
+#include "UI_interface.h"
+
 #include "ED_mesh.h"
 #include "ED_numinput.h"
 #include "ED_screen.h"
@@ -72,14 +74,12 @@ typedef struct {
        float segments;     /* Segments as float so smooth mouse pan works in small increments */
 } BevelData;
 
-#define HEADER_LENGTH 180
-
 static void edbm_bevel_update_header(bContext *C, wmOperator *op)
 {
        const char *str = IFACE_("Confirm: (Enter/LMB), Cancel: (Esc/RMB), Mode: %s (M), Clamp Overlap: %s (C), "
                                 "Vertex Only: %s (V), Offset: %s, Segments: %d");
 
-       char msg[HEADER_LENGTH];
+       char msg[UI_MAX_DRAW_STR];
        ScrArea *sa = CTX_wm_area(C);
        Scene *sce = CTX_data_scene(C);
 
@@ -98,7 +98,7 @@ static void edbm_bevel_update_header(bContext *C, wmOperator *op)
 
                RNA_property_enum_name_gettexted(C, op->ptr, prop, RNA_property_enum_get(op->ptr, prop), &type_str);
 
-               BLI_snprintf(msg, HEADER_LENGTH, str, type_str,
+               BLI_snprintf(msg, sizeof(msg), str, type_str,
                             WM_bool_as_string(RNA_boolean_get(op->ptr, "clamp_overlap")),
                             WM_bool_as_string(RNA_boolean_get(op->ptr, "vertex_only")),
                             offset_str, RNA_int_get(op->ptr, "segments"));
index 097117cce6b9dfbe321c5b229ee3822918252f90..3e0747f055fbfbe03a422853a94a42d5c1a7e838 100644 (file)
@@ -44,6 +44,8 @@
 #include "WM_api.h"
 #include "WM_types.h"
 
+#include "UI_interface.h"
+
 #include "ED_mesh.h"
 #include "ED_numinput.h"
 #include "ED_screen.h"
@@ -54,8 +56,6 @@
 #include "mesh_intern.h"  /* own include */
 
 
-#define HEADER_LENGTH 180
-
 typedef struct {
        float old_thickness;
        float old_depth;
@@ -83,7 +83,7 @@ static void edbm_inset_update_header(wmOperator *op, bContext *C)
        const char *str = IFACE_("Confirm: Enter/LClick, Cancel: (Esc/RClick), Thickness: %s, "
                                 "Depth (Ctrl to tweak): %s (%s), Outset (O): (%s), Boundary (B): (%s), Individual (I): (%s)");
 
-       char msg[HEADER_LENGTH];
+       char msg[UI_MAX_DRAW_STR];
        ScrArea *sa = CTX_wm_area(C);
        Scene *sce = CTX_data_scene(C);
 
@@ -95,7 +95,7 @@ static void edbm_inset_update_header(wmOperator *op, bContext *C)
                        BLI_snprintf(flts_str, NUM_STR_REP_LEN, "%f", RNA_float_get(op->ptr, "thickness"));
                        BLI_snprintf(flts_str + NUM_STR_REP_LEN, NUM_STR_REP_LEN, "%f", RNA_float_get(op->ptr, "depth"));
                }
-               BLI_snprintf(msg, HEADER_LENGTH, str,
+               BLI_snprintf(msg, sizeof(msg), str,
                             flts_str,
                             flts_str + NUM_STR_REP_LEN,
                             WM_bool_as_string(opdata->modify_depth),
index 31e1a22fe74537e10eaeff045a96224268ad5522..f1c1e4105d08075ee5c47cb6e11e91b4bb59db4f 100644 (file)
@@ -47,6 +47,8 @@
 
 #include "BIF_gl.h"
 
+#include "UI_interface.h"
+
 #include "ED_screen.h"
 #include "ED_space_api.h"
 #include "ED_view3d.h"
@@ -780,7 +782,7 @@ static int loopcut_modal(bContext *C, wmOperator *op, const wmEvent *event)
 
        if (show_cuts) {
                Scene *sce = CTX_data_scene(C);
-               char buf[64 + NUM_STR_REP_LEN * 2];
+               char buf[UI_MAX_DRAW_STR];
                char str_rep[NUM_STR_REP_LEN * 2];
                if (hasNumInput(&lcd->num)) {
                        outputNumInput(&lcd->num, str_rep, &sce->unit);
index 3511480821a16bdc6b11fa045a4d2b3ef638fc54..ab8b7d4e138c2e57bf9e72f47c0907e930dd11ab 100644 (file)
@@ -635,8 +635,8 @@ void ED_area_headerprint(ScrArea *sa, const char *str)
                if (ar->regiontype == RGN_TYPE_HEADER) {
                        if (str) {
                                if (ar->headerstr == NULL)
-                                       ar->headerstr = MEM_mallocN(256, "headerprint");
-                               BLI_strncpy(ar->headerstr, str, 256);
+                                       ar->headerstr = MEM_mallocN(UI_MAX_DRAW_STR, "headerprint");
+                               BLI_strncpy(ar->headerstr, str, UI_MAX_DRAW_STR);
                        }
                        else if (ar->headerstr) {
                                MEM_freeN(ar->headerstr);
index 7d663a034ee52cb4b0f5466c0145504c45554b80..88b3bc5d8fdb3a50f471207ea188908bfd85d693 100644 (file)
@@ -41,6 +41,7 @@
 #include "BLI_utildefines.h"
 #include "BLI_threads.h"
 
+#include "BLT_translation.h"
 
 #include "IMB_imbuf.h"
 #include "IMB_imbuf_types.h"
@@ -60,6 +61,7 @@
 #include "BKE_paint.h"
 #include "BKE_texture.h"
 
+#include "UI_interface.h"
 #include "UI_view2d.h"
 
 #include "ED_image.h"
@@ -1167,20 +1169,17 @@ typedef struct {
 
 static void sample_color_update_header(SampleColorData *data, bContext *C)
 {
-#define HEADER_LENGTH 150
-       char msg[HEADER_LENGTH];
+       char msg[UI_MAX_DRAW_STR];
        ScrArea *sa = CTX_wm_area(C);
 
        if (sa) {
-               BLI_snprintf(msg, HEADER_LENGTH,
-                            "Sample color for %s",
+               BLI_snprintf(msg, sizeof(msg),
+                            IFACE_("Sample color for %s"),
                             !data->sample_palette ?
-                            "Brush. Use Left Click to sample for palette instead" :
-                            "Palette. Use Left Click to sample more colors");
+                            IFACE_("Brush. Use Left Click to sample for palette instead") :
+                            IFACE_("Palette. Use Left Click to sample more colors"));
                ED_area_headerprint(sa, msg);
        }
-
-#undef HEADER_LENGTH
 }
 
 static int sample_color_exec(bContext *C, wmOperator *op)
index 4abc7f5e71b99ac03067a0bbae886bef4510db4a..d7249897723e47b8c2d348c8c76b386e79725604 100644 (file)
@@ -514,12 +514,10 @@ void NODE_OT_link_viewer(wmOperatorType *ot)
 
 static void node_link_update_header(bContext *C, bNodeLinkDrag *UNUSED(nldrag))
 {
-#define HEADER_LENGTH 256
-       char header[HEADER_LENGTH];
+       char header[UI_MAX_DRAW_STR];
 
-       BLI_strncpy(header, IFACE_("LMB: drag node link, RMB: cancel"), HEADER_LENGTH);
+       BLI_strncpy(header, IFACE_("LMB: drag node link, RMB: cancel"), sizeof(header));
        ED_area_headerprint(CTX_wm_area(C), header);
-#undef HEADER_LENGTH
 }
 
 static int node_count_links(bNodeTree *ntree, bNodeSocket *sock)
index e3cdedf042b129fbc4b764da7bfc869e5a26a43a..8ae89941bdbb6e73677395ae287342f2bbb64fa2 100644 (file)
@@ -1506,23 +1506,20 @@ static int sequencer_slip_exec(bContext *C, wmOperator *op)
 
 static void sequencer_slip_update_header(Scene *scene, ScrArea *sa, SlipData *data, int offset)
 {
-#define HEADER_LENGTH 40
-       char msg[HEADER_LENGTH];
+       char msg[UI_MAX_DRAW_STR];
 
        if (sa) {
                if (hasNumInput(&data->num_input)) {
                        char num_str[NUM_STR_REP_LEN];
                        outputNumInput(&data->num_input, num_str, &scene->unit);
-                       BLI_snprintf(msg, HEADER_LENGTH, "Trim offset: %s", num_str);
+                       BLI_snprintf(msg, sizeof(msg), IFACE_("Trim offset: %s"), num_str);
                }
                else {
-                       BLI_snprintf(msg, HEADER_LENGTH, "Trim offset: %d", offset);
+                       BLI_snprintf(msg, sizeof(msg), IFACE_("Trim offset: %d"), offset);
                }
        }
 
        ED_area_headerprint(sa, msg);
-
-#undef HEADER_LENGTH
 }
 
 static int sequencer_slip_modal(bContext *C, wmOperator *op, const wmEvent *event)
index 6789970d00f779d11cbd3606d6c1dfe37ae45c18..dfa76753f64ab1e46620a6ee553908684e7ed235 100644 (file)
@@ -35,6 +35,8 @@
 #include "BLI_math.h"
 #include "BLI_blenlib.h"
 
+#include "BLT_translation.h"
+
 #include "BKE_context.h"
 #include "BKE_unit.h"
 #include "BKE_gpencil.h"
@@ -720,13 +722,13 @@ static bool view3d_ruler_item_mousemove(
 
 static void view3d_ruler_header_update(ScrArea *sa)
 {
-       const char *text = "Ctrl+LMB: Add, "
-                          "Del: Remove, "
-                          "Ctrl+Drag: Snap, "
-                          "Shift+Drag: Thickness, "
-                          "Ctrl+C: Copy Value, "
-                          "Enter: Store,  "
-                          "Esc: Cancel";
+       const char *text = IFACE_("Ctrl+LMB: Add, "
+                                 "Del: Remove, "
+                                 "Ctrl+Drag: Snap, "
+                                 "Shift+Drag: Thickness, "
+                                 "Ctrl+C: Copy Value, "
+                                 "Enter: Store,  "
+                                 "Esc: Cancel");
 
        ED_area_headerprint(sa, text);
 }
index 29c152c2f6eb6350701b4c241b655a520fa02016..5c0c0bcd6c10801f75b2da215eb135be0736fcb7 100644 (file)
@@ -80,6 +80,7 @@
 #include "WM_api.h"
 
 #include "UI_view2d.h"
+#include "UI_interface.h"
 #include "UI_interface_icons.h"
 #include "UI_resources.h"
 
@@ -93,8 +94,6 @@
 /* Disabling, since when you type you know what you are doing, and being able to set it to zero is handy. */
 // #define USE_NUM_NO_ZERO
 
-#define MAX_INFO_LEN 256
-
 static void drawTransformApply(const struct bContext *C, ARegion *ar, void *arg);
 static void doEdgeSlide(TransInfo *t, float perc);
 static void doVertSlide(TransInfo *t, float perc);
@@ -2910,7 +2909,7 @@ static void Bend(TransInfo *t, const int UNUSED(mval[2]))
        float pivot[3];
        float warp_end_radius[3];
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        const struct BendCustomData *data = t->custom.mode.data;
        const bool is_clamp = (t->flag & T_ALT_TRANSFORM) == 0;
 
@@ -2948,13 +2947,13 @@ static void Bend(TransInfo *t, const int UNUSED(mval[2]))
 
                outputNumInput(&(t->num), c, &t->scene->unit);
                
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Bend Angle: %s Radius: %s Alt, Clamp %s"),
+               BLI_snprintf(str, sizeof(str), IFACE_("Bend Angle: %s Radius: %s Alt, Clamp %s"),
                             &c[0], &c[NUM_STR_REP_LEN],
                             WM_bool_as_string(is_clamp));
        }
        else {
                /* default header print */
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Bend Angle: %.3f Radius: %.4f, Alt, Clamp %s"),
+               BLI_snprintf(str, sizeof(str), IFACE_("Bend Angle: %.3f Radius: %.4f, Alt, Clamp %s"),
                             RAD2DEGF(values.angle), values.scale * data->warp_init_dist,
                             WM_bool_as_string(is_clamp));
        }
@@ -3104,7 +3103,7 @@ static void applyShear(TransInfo *t, const int UNUSED(mval[2]))
        float smat[3][3], tmat[3][3], totmat[3][3], persmat[3][3], persinv[3][3];
        float value;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        const bool is_local_center = transdata_check_local_center(t, t->around);
        
        copy_m3_m4(persmat, t->viewmat);
@@ -3124,11 +3123,11 @@ static void applyShear(TransInfo *t, const int UNUSED(mval[2]))
                
                outputNumInput(&(t->num), c, &t->scene->unit);
                
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Shear: %s %s"), c, t->proptext);
+               BLI_snprintf(str, sizeof(str), IFACE_("Shear: %s %s"), c, t->proptext);
        }
        else {
                /* default header print */
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Shear: %.3f %s (Press X or Y to set shear axis)"), value, t->proptext);
+               BLI_snprintf(str, sizeof(str), IFACE_("Shear: %.3f %s (Press X or Y to set shear axis)"), value, t->proptext);
        }
        
        unit_m3(smat);
@@ -3228,7 +3227,7 @@ static void initResize(TransInfo *t)
        t->num.unit_type[2] = B_UNIT_NONE;
 }
 
-static void headerResize(TransInfo *t, const float vec[3], char str[MAX_INFO_LEN])
+static void headerResize(TransInfo *t, const float vec[3], char str[UI_MAX_DRAW_STR])
 {
        char tvec[NUM_STR_REP_LEN * 3];
        size_t ofs = 0;
@@ -3244,32 +3243,32 @@ static void headerResize(TransInfo *t, const float vec[3], char str[MAX_INFO_LEN
        if (t->con.mode & CON_APPLY) {
                switch (t->num.idx_max) {
                        case 0:
-                               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Scale: %s%s %s"),
+                               ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_("Scale: %s%s %s"),
                                                    &tvec[0], t->con.text, t->proptext);
                                break;
                        case 1:
-                               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Scale: %s : %s%s %s"),
+                               ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_("Scale: %s : %s%s %s"),
                                                    &tvec[0], &tvec[NUM_STR_REP_LEN], t->con.text, t->proptext);
                                break;
                        case 2:
-                               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Scale: %s : %s : %s%s %s"), &tvec[0],
+                               ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_("Scale: %s : %s : %s%s %s"), &tvec[0],
                                                    &tvec[NUM_STR_REP_LEN], &tvec[NUM_STR_REP_LEN * 2], t->con.text, t->proptext);
                                break;
                }
        }
        else {
                if (t->flag & T_2D_EDIT) {
-                       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Scale X: %s   Y: %s%s %s"),
+                       ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_("Scale X: %s   Y: %s%s %s"),
                                            &tvec[0], &tvec[NUM_STR_REP_LEN], t->con.text, t->proptext);
                }
                else {
-                       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Scale X: %s   Y: %s  Z: %s%s %s"),
+                       ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_("Scale X: %s   Y: %s  Z: %s%s %s"),
                                            &tvec[0], &tvec[NUM_STR_REP_LEN], &tvec[NUM_STR_REP_LEN * 2], t->con.text, t->proptext);
                }
        }
 
        if (t->flag & T_PROP_EDIT_ALL) {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
+               ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
        }
 }
 
@@ -3394,7 +3393,7 @@ static void applyResize(TransInfo *t, const int mval[2])
        TransData *td;
        float mat[3][3];
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        if (t->flag & T_AUTOVALUES) {
                copy_v3_v3(t->values, t->auto_values);
@@ -3512,7 +3511,7 @@ static void applySkinResize(TransInfo *t, const int UNUSED(mval[2]))
        TransData *td;
        float size[3], mat[3][3];
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        
        copy_v3_fl(size, t->values[0]);
        
@@ -3610,7 +3609,7 @@ static void applyToSphere(TransInfo *t, const int UNUSED(mval[2]))
        float vec[3];
        float ratio, radius;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        TransData *td = t->data;
        
        ratio = t->values[0];
@@ -3629,11 +3628,11 @@ static void applyToSphere(TransInfo *t, const int UNUSED(mval[2]))
                
                outputNumInput(&(t->num), c, &t->scene->unit);
                
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("To Sphere: %s %s"), c, t->proptext);
+               BLI_snprintf(str, sizeof(str), IFACE_("To Sphere: %s %s"), c, t->proptext);
        }
        else {
                /* default header print */
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("To Sphere: %.4f %s"), ratio, t->proptext);
+               BLI_snprintf(str, sizeof(str), IFACE_("To Sphere: %.4f %s"), ratio, t->proptext);
        }
        
        
@@ -3964,7 +3963,7 @@ static void applyRotationValue(TransInfo *t, float angle, float axis[3])
 
 static void applyRotation(TransInfo *t, const int UNUSED(mval[2]))
 {
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        size_t ofs = 0;
 
        float final;
@@ -3995,15 +3994,15 @@ static void applyRotation(TransInfo *t, const int UNUSED(mval[2]))
                
                outputNumInput(&(t->num), c, &t->scene->unit);
                
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Rot: %s %s %s"), &c[0], t->con.text, t->proptext);
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("Rot: %s %s %s"), &c[0], t->con.text, t->proptext);
        }
        else {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Rot: %.2f%s %s"),
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("Rot: %.2f%s %s"),
                                    RAD2DEGF(final), t->con.text, t->proptext);
        }
        
        if (t->flag & T_PROP_EDIT_ALL) {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
        }
 
        applyRotationValue(t, final, t->axis);
@@ -4074,7 +4073,7 @@ static void applyTrackballValue(TransInfo *t, const float axis1[3], const float
 
 static void applyTrackball(TransInfo *t, const int UNUSED(mval[2]))
 {
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        size_t ofs = 0;
        float axis1[3], axis2[3];
 #if 0  /* UNUSED */
@@ -4100,16 +4099,16 @@ static void applyTrackball(TransInfo *t, const int UNUSED(mval[2]))
 
                outputNumInput(&(t->num), c, &t->scene->unit);
 
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Trackball: %s %s %s"),
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("Trackball: %s %s %s"),
                                    &c[0], &c[NUM_STR_REP_LEN], t->proptext);
        }
        else {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Trackball: %.2f %.2f %s"),
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("Trackball: %.2f %.2f %s"),
                                    RAD2DEGF(phi[0]), RAD2DEGF(phi[1]), t->proptext);
        }
 
        if (t->flag & T_PROP_EDIT_ALL) {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
        }
 
 #if 0  /* UNUSED */
@@ -4206,7 +4205,7 @@ static void initTranslation(TransInfo *t)
        }
 }
 
-static void headerTranslation(TransInfo *t, const float vec[3], char str[MAX_INFO_LEN])
+static void headerTranslation(TransInfo *t, const float vec[3], char str[UI_MAX_DRAW_STR])
 {
        size_t ofs = 0;
        char tvec[NUM_STR_REP_LEN * 3];
@@ -4268,15 +4267,15 @@ static void headerTranslation(TransInfo *t, const float vec[3], char str[MAX_INF
        if (t->con.mode & CON_APPLY) {
                switch (t->num.idx_max) {
                        case 0:
-                               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, "D: %s (%s)%s %s  %s",
+                               ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, "D: %s (%s)%s %s  %s",
                                               &tvec[0], distvec, t->con.text, t->proptext, autoik);
                                break;
                        case 1:
-                               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, "D: %s   D: %s (%s)%s %s  %s",
+                               ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, "D: %s   D: %s (%s)%s %s  %s",
                                                    &tvec[0], &tvec[NUM_STR_REP_LEN], distvec, t->con.text, t->proptext, autoik);
                                break;
                        case 2:
-                               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, "D: %s   D: %s  D: %s (%s)%s %s  %s",
+                               ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, "D: %s   D: %s  D: %s (%s)%s %s  %s",
                                                    &tvec[0], &tvec[NUM_STR_REP_LEN], &tvec[NUM_STR_REP_LEN * 2], distvec,
                                                    t->con.text, t->proptext, autoik);
                                break;
@@ -4284,18 +4283,18 @@ static void headerTranslation(TransInfo *t, const float vec[3], char str[MAX_INF
        }
        else {
                if (t->flag & T_2D_EDIT) {
-                       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, "Dx: %s   Dy: %s (%s)%s %s",
+                       ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, "Dx: %s   Dy: %s (%s)%s %s",
                                            &tvec[0], &tvec[NUM_STR_REP_LEN], distvec, t->con.text, t->proptext);
                }
                else {
-                       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, "Dx: %s   Dy: %s  Dz: %s (%s)%s %s  %s",
+                       ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, "Dx: %s   Dy: %s  Dz: %s (%s)%s %s  %s",
                                            &tvec[0], &tvec[NUM_STR_REP_LEN], &tvec[NUM_STR_REP_LEN * 2], distvec, t->con.text,
                                            t->proptext, autoik);
                }
        }
 
        if (t->flag & T_PROP_EDIT_ALL) {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
+               ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
        }
 
        if (t->spacetype == SPACE_NODE) {
@@ -4304,11 +4303,11 @@ static void headerTranslation(TransInfo *t, const float vec[3], char str[MAX_INF
                if ((snode->flag & SNODE_SKIP_INSOFFSET) == 0) {
                        const char *str_old = BLI_strdup(str);
                        const char *str_dir = (snode->insert_ofs_dir == SNODE_INSERTOFS_DIR_RIGHT) ? IFACE_("right") : IFACE_("left");
-                       char str_km[MAX_INFO_LEN];
+                       char str_km[64];
 
                        WM_modalkeymap_items_to_string(t->keymap, TFM_MODAL_INSERTOFS_TOGGLE_DIR, true, sizeof(str_km), str_km);
 
-                       ofs += BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Auto-offset set to %s - press %s to toggle direction  |  %s"),
+                       ofs += BLI_snprintf(str, UI_MAX_DRAW_STR, IFACE_("Auto-offset set to %s - press %s to toggle direction  |  %s"),
                                            str_dir, str_km, str_old);
 
                        MEM_freeN((void *)str_old);
@@ -4376,7 +4375,7 @@ static void applyTranslationValue(TransInfo *t, const float vec[3])
 
 static void applyTranslation(TransInfo *t, const int UNUSED(mval[2]))
 {
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        float value_final[3];
 
        if (t->flag & T_AUTOVALUES) {
@@ -4468,7 +4467,7 @@ static void applyShrinkFatten(TransInfo *t, const int UNUSED(mval[2]))
 {
        float distance;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        size_t ofs = 0;
        TransData *td = t->data;
 
@@ -4481,29 +4480,29 @@ static void applyShrinkFatten(TransInfo *t, const int UNUSED(mval[2]))
        t->values[0] = -distance;
 
        /* header print for NumInput */
-       ofs += BLI_strncpy_rlen(str + ofs, IFACE_("Shrink/Fatten:"), MAX_INFO_LEN - ofs);
+       ofs += BLI_strncpy_rlen(str + ofs, IFACE_("Shrink/Fatten:"), sizeof(str) - ofs);
        if (hasNumInput(&t->num)) {
                char c[NUM_STR_REP_LEN];
                outputNumInput(&(t->num), c, &t->scene->unit);
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, " %s", c);
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, " %s", c);
        }
        else {
                /* default header print */
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, " %.4f", distance);
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, " %.4f", distance);
        }
 
        if (t->proptext[0]) {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, " %s", t->proptext);
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, " %s", t->proptext);
        }
-       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, ", (");
+       ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, ", (");
 
        if (t->keymap) {
                wmKeyMapItem *kmi = WM_modalkeymap_find_propvalue(t->keymap, TFM_MODAL_RESIZE);
                if (kmi) {
-                       ofs += WM_keymap_item_to_string(kmi, false, MAX_INFO_LEN - ofs, str + ofs);
+                       ofs += WM_keymap_item_to_string(kmi, false, sizeof(str) - ofs, str + ofs);
                }
        }
-       BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_(" or Alt) Even Thickness %s"),
+       BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_(" or Alt) Even Thickness %s"),
                     WM_bool_as_string((t->flag & T_ALT_TRANSFORM) != 0));
        /* done with header string */
 
@@ -4563,7 +4562,7 @@ static void applyTilt(TransInfo *t, const int UNUSED(mval[2]))
 {
        TransData *td = t->data;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        float final;
 
@@ -4580,13 +4579,13 @@ static void applyTilt(TransInfo *t, const int UNUSED(mval[2]))
 
                outputNumInput(&(t->num), c, &t->scene->unit);
 
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Tilt: %s° %s"), &c[0], t->proptext);
+               BLI_snprintf(str, sizeof(str), IFACE_("Tilt: %s° %s"), &c[0], t->proptext);
 
                /* XXX For some reason, this seems needed for this op, else RNA prop is not updated... :/ */
                t->values[0] = final;
        }
        else {
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Tilt: %.2f° %s"), RAD2DEGF(final), t->proptext);
+               BLI_snprintf(str, sizeof(str), IFACE_("Tilt: %.2f° %s"), RAD2DEGF(final), t->proptext);
        }
 
        for (i = 0; i < t->total; i++, td++) {
@@ -4644,7 +4643,7 @@ static void applyCurveShrinkFatten(TransInfo *t, const int UNUSED(mval[2]))
        TransData *td = t->data;
        float ratio;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        ratio = t->values[0];
 
@@ -4659,10 +4658,10 @@ static void applyCurveShrinkFatten(TransInfo *t, const int UNUSED(mval[2]))
                char c[NUM_STR_REP_LEN];
 
                outputNumInput(&(t->num), c, &t->scene->unit);
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Shrink/Fatten: %s"), c);
+               BLI_snprintf(str, sizeof(str), IFACE_("Shrink/Fatten: %s"), c);
        }
        else {
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Shrink/Fatten: %3f"), ratio);
+               BLI_snprintf(str, sizeof(str), IFACE_("Shrink/Fatten: %3f"), ratio);
        }
 
        for (i = 0; i < t->total; i++, td++) {
@@ -4724,7 +4723,7 @@ static void applyMaskShrinkFatten(TransInfo *t, const int UNUSED(mval[2]))
        float ratio;
        int i;
        bool initial_feather = false;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        ratio = t->values[0];
 
@@ -4739,10 +4738,10 @@ static void applyMaskShrinkFatten(TransInfo *t, const int UNUSED(mval[2]))
                char c[NUM_STR_REP_LEN];
 
                outputNumInput(&(t->num), c, &t->scene->unit);
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Feather Shrink/Fatten: %s"), c);
+               BLI_snprintf(str, sizeof(str), IFACE_("Feather Shrink/Fatten: %s"), c);
        }
        else {
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Feather Shrink/Fatten: %3f"), ratio);
+               BLI_snprintf(str, sizeof(str), IFACE_("Feather Shrink/Fatten: %3f"), ratio);
        }
 
        /* detect if no points have feather yet */
@@ -4824,7 +4823,7 @@ static void applyGPShrinkFatten(TransInfo *t, const int UNUSED(mval[2]))
        TransData *td = t->data;
        float ratio;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        ratio = t->values[0];
 
@@ -4839,10 +4838,10 @@ static void applyGPShrinkFatten(TransInfo *t, const int UNUSED(mval[2]))
                char c[NUM_STR_REP_LEN];
 
                outputNumInput(&(t->num), c, &t->scene->unit);
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Shrink/Fatten: %s"), c);
+               BLI_snprintf(str, sizeof(str), IFACE_("Shrink/Fatten: %s"), c);
        }
        else {
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Shrink/Fatten: %3f"), ratio);
+               BLI_snprintf(str, sizeof(str), IFACE_("Shrink/Fatten: %3f"), ratio);
        }
 
        for (i = 0; i < t->total; i++, td++) {
@@ -4897,7 +4896,7 @@ static void applyPushPull(TransInfo *t, const int UNUSED(mval[2]))
        float vec[3], axis[3];
        float distance;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        TransData *td = t->data;
 
        distance = t->values[0];
@@ -4914,11 +4913,11 @@ static void applyPushPull(TransInfo *t, const int UNUSED(mval[2]))
 
                outputNumInput(&(t->num), c, &t->scene->unit);
 
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Push/Pull: %s%s %s"), c, t->con.text, t->proptext);
+               BLI_snprintf(str, sizeof(str), IFACE_("Push/Pull: %s%s %s"), c, t->con.text, t->proptext);
        }
        else {
                /* default header print */
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Push/Pull: %.4f%s %s"), distance, t->con.text, t->proptext);
+               BLI_snprintf(str, sizeof(str), IFACE_("Push/Pull: %.4f%s %s"), distance, t->con.text, t->proptext);
        }
 
        if (t->con.applyRot && t->con.mode & CON_APPLY) {
@@ -4989,7 +4988,7 @@ static void applyBevelWeight(TransInfo *t, const int UNUSED(mval[2]))
        TransData *td = t->data;
        float weight;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        weight = t->values[0];
 
@@ -5008,16 +5007,16 @@ static void applyBevelWeight(TransInfo *t, const int UNUSED(mval[2]))
                outputNumInput(&(t->num), c, &t->scene->unit);
 
                if (weight >= 0.0f)
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Bevel Weight: +%s %s"), c, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Bevel Weight: +%s %s"), c, t->proptext);
                else
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Bevel Weight: %s %s"), c, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Bevel Weight: %s %s"), c, t->proptext);
        }
        else {
                /* default header print */
                if (weight >= 0.0f)
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Bevel Weight: +%.3f %s"), weight, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Bevel Weight: +%.3f %s"), weight, t->proptext);
                else
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Bevel Weight: %.3f %s"), weight, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Bevel Weight: %.3f %s"), weight, t->proptext);
        }
 
        for (i = 0; i < t->total; i++, td++) {
@@ -5069,7 +5068,7 @@ static void applyCrease(TransInfo *t, const int UNUSED(mval[2]))
        TransData *td = t->data;
        float crease;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        crease = t->values[0];
 
@@ -5088,16 +5087,16 @@ static void applyCrease(TransInfo *t, const int UNUSED(mval[2]))
                outputNumInput(&(t->num), c, &t->scene->unit);
 
                if (crease >= 0.0f)
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Crease: +%s %s"), c, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Crease: +%s %s"), c, t->proptext);
                else
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Crease: %s %s"), c, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Crease: %s %s"), c, t->proptext);
        }
        else {
                /* default header print */
                if (crease >= 0.0f)
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Crease: +%.3f %s"), crease, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Crease: +%.3f %s"), crease, t->proptext);
                else
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Crease: %.3f %s"), crease, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Crease: %.3f %s"), crease, t->proptext);
        }
 
        for (i = 0; i < t->total; i++, td++) {
@@ -5151,7 +5150,7 @@ static void initBoneSize(TransInfo *t)
        t->num.unit_type[2] = B_UNIT_NONE;
 }
 
-static void headerBoneSize(TransInfo *t, const float vec[3], char str[MAX_INFO_LEN])
+static void headerBoneSize(TransInfo *t, const float vec[3], char str[UI_MAX_DRAW_STR])
 {
        char tvec[NUM_STR_REP_LEN * 3];
        if (hasNumInput(&t->num)) {
@@ -5166,13 +5165,13 @@ static void headerBoneSize(TransInfo *t, const float vec[3], char str[MAX_INFO_L
        /* hmm... perhaps the y-axis values don't need to be shown? */
        if (t->con.mode & CON_APPLY) {
                if (t->num.idx_max == 0)
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("ScaleB: %s%s %s"), &tvec[0], t->con.text, t->proptext);
+                       BLI_snprintf(str, UI_MAX_DRAW_STR, IFACE_("ScaleB: %s%s %s"), &tvec[0], t->con.text, t->proptext);
                else
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("ScaleB: %s : %s : %s%s %s"),
+                       BLI_snprintf(str, UI_MAX_DRAW_STR, IFACE_("ScaleB: %s : %s : %s%s %s"),
                                     &tvec[0], &tvec[NUM_STR_REP_LEN], &tvec[NUM_STR_REP_LEN * 2], t->con.text, t->proptext);
        }
        else {
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("ScaleB X: %s  Y: %s  Z: %s%s %s"),
+               BLI_snprintf(str, UI_MAX_DRAW_STR, IFACE_("ScaleB X: %s  Y: %s  Z: %s%s %s"),
                             &tvec[0], &tvec[NUM_STR_REP_LEN], &tvec[NUM_STR_REP_LEN * 2], t->con.text, t->proptext);
        }
 }
@@ -5203,7 +5202,7 @@ static void applyBoneSize(TransInfo *t, const int mval[2])
        float size[3], mat[3][3];
        float ratio;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        
        // TRANSFORM_FIX_ME MOVE TO MOUSE INPUT
        /* for manipulator, center handle, the scaling can't be done relative to center */
@@ -5282,7 +5281,7 @@ static void applyBoneEnvelope(TransInfo *t, const int UNUSED(mval[2]))
        TransData *td = t->data;
        float ratio;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        
        ratio = t->values[0];
        
@@ -5297,10 +5296,10 @@ static void applyBoneEnvelope(TransInfo *t, const int UNUSED(mval[2]))
                char c[NUM_STR_REP_LEN];
                
                outputNumInput(&(t->num), c, &t->scene->unit);
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Envelope: %s"), c);
+               BLI_snprintf(str, sizeof(str), IFACE_("Envelope: %s"), c);
        }
        else {
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Envelope: %3f"), ratio);
+               BLI_snprintf(str, sizeof(str), IFACE_("Envelope: %3f"), ratio);
        }
        
        for (i = 0; i < t->total; i++, td++) {
@@ -6959,7 +6958,7 @@ static void doEdgeSlide(TransInfo *t, float perc)
 
 static void applyEdgeSlide(TransInfo *t, const int UNUSED(mval[2]))
 {
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        size_t ofs = 0;
        float final;
        EdgeSlideData *sld =  t->custom.mode.data;
@@ -6982,20 +6981,20 @@ static void applyEdgeSlide(TransInfo *t, const int UNUSED(mval[2]))
        t->values[0] = final;
 
        /* header string */
-       ofs += BLI_strncpy_rlen(str + ofs, IFACE_("Edge Slide: "), MAX_INFO_LEN - ofs);
+       ofs += BLI_strncpy_rlen(str + ofs, IFACE_("Edge Slide: "), sizeof(str) - ofs);
        if (hasNumInput(&t->num)) {
                char c[NUM_STR_REP_LEN];
                outputNumInput(&(t->num), c, &t->scene->unit);
-               ofs += BLI_strncpy_rlen(str + ofs, &c[0], MAX_INFO_LEN - ofs);
+               ofs += BLI_strncpy_rlen(str + ofs, &c[0], sizeof(str) - ofs);
        }
        else {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, "%.4f ", final);
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, "%.4f ", final);
        }
-       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("(E)ven: %s, "), WM_bool_as_string(use_even));
+       ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("(E)ven: %s, "), WM_bool_as_string(use_even));
        if (use_even) {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("(F)lipped: %s, "), WM_bool_as_string(flipped));
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("(F)lipped: %s, "), WM_bool_as_string(flipped));
        }
-       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Alt or (C)lamp: %s"), WM_bool_as_string(is_clamp));
+       ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("Alt or (C)lamp: %s"), WM_bool_as_string(is_clamp));
        /* done with header string */
 
        /* do stuff here */
@@ -7527,7 +7526,7 @@ static void doVertSlide(TransInfo *t, float perc)
 
 static void applyVertSlide(TransInfo *t, const int UNUSED(mval[2]))
 {
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        size_t ofs = 0;
        float final;
        VertSlideData *sld =  t->custom.mode.data;
@@ -7550,20 +7549,20 @@ static void applyVertSlide(TransInfo *t, const int UNUSED(mval[2]))
        t->values[0] = final;
 
        /* header string */
-       ofs += BLI_strncpy_rlen(str + ofs, IFACE_("Vert Slide: "), MAX_INFO_LEN - ofs);
+       ofs += BLI_strncpy_rlen(str + ofs, IFACE_("Vert Slide: "), sizeof(str) - ofs);
        if (hasNumInput(&t->num)) {
                char c[NUM_STR_REP_LEN];
                outputNumInput(&(t->num), c, &t->scene->unit);
-               ofs += BLI_strncpy_rlen(str + ofs, &c[0], MAX_INFO_LEN - ofs);
+               ofs += BLI_strncpy_rlen(str + ofs, &c[0], sizeof(str) - ofs);
        }
        else {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, "%.4f ", final);
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, "%.4f ", final);
        }
-       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("(E)ven: %s, "), WM_bool_as_string(use_even));
+       ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("(E)ven: %s, "), WM_bool_as_string(use_even));
        if (use_even) {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("(F)lipped: %s, "), WM_bool_as_string(flipped));
+               ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("(F)lipped: %s, "), WM_bool_as_string(flipped));
        }
-       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Alt or (C)lamp: %s"), WM_bool_as_string(is_clamp));
+       ofs += BLI_snprintf(str + ofs, sizeof(str) - ofs, IFACE_("Alt or (C)lamp: %s"), WM_bool_as_string(is_clamp));
        /* done with header string */
 
        /* do stuff here */
@@ -7607,7 +7606,7 @@ static void applyBoneRoll(TransInfo *t, const int UNUSED(mval[2]))
 {
        TransData *td = t->data;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        float final;
 
@@ -7624,10 +7623,10 @@ static void applyBoneRoll(TransInfo *t, const int UNUSED(mval[2]))
 
                outputNumInput(&(t->num), c, &t->scene->unit);
 
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Roll: %s"), &c[0]);
+               BLI_snprintf(str, sizeof(str), IFACE_("Roll: %s"), &c[0]);
        }
        else {
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Roll: %.2f"), RAD2DEGF(final));
+               BLI_snprintf(str, sizeof(str), IFACE_("Roll: %.2f"), RAD2DEGF(final));
        }
 
        /* set roll values */
@@ -7675,7 +7674,7 @@ static void applyBakeTime(TransInfo *t, const int mval[2])
        TransData *td = t->data;
        float time;
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        float fac = 0.1f;
 
@@ -7704,16 +7703,16 @@ static void applyBakeTime(TransInfo *t, const int mval[2])
                outputNumInput(&(t->num), c, &t->scene->unit);
 
                if (time >= 0.0f)
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Time: +%s %s"), c, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Time: +%s %s"), c, t->proptext);
                else
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Time: %s %s"), c, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Time: %s %s"), c, t->proptext);
        }
        else {
                /* default header print */
                if (time >= 0.0f)
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Time: +%.3f %s"), time, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Time: +%.3f %s"), time, t->proptext);
                else
-                       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Time: %.3f %s"), time, t->proptext);
+                       BLI_snprintf(str, sizeof(str), IFACE_("Time: %.3f %s"), time, t->proptext);
        }
 
        for (i = 0; i < t->total; i++, td++) {
@@ -7759,7 +7758,7 @@ static void applyMirror(TransInfo *t, const int UNUSED(mval[2]))
        TransData *td;
        float size[3], mat[3][3];
        int i;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        /*
         * OPTIMIZATION:
@@ -7777,7 +7776,7 @@ static void applyMirror(TransInfo *t, const int UNUSED(mval[2]))
                        t->con.applySize(t, NULL, mat);
                }
 
-               BLI_snprintf(str, MAX_INFO_LEN, IFACE_("Mirror%s"), t->con.text);
+               BLI_snprintf(str, sizeof(str), IFACE_("Mirror%s"), t->con.text);
 
                for (i = 0, td = t->data; i < t->total; i++, td++) {
                        if (td->flag & TD_NOACTION)
@@ -7906,7 +7905,7 @@ static void initSeqSlide(TransInfo *t)
        t->num.unit_type[1] = B_UNIT_NONE;
 }
 
-static void headerSeqSlide(TransInfo *t, const float val[2], char str[MAX_INFO_LEN])
+static void headerSeqSlide(TransInfo *t, const float val[2], char str[UI_MAX_DRAW_STR])
 {
        char tvec[NUM_STR_REP_LEN * 3];
        size_t ofs = 0;
@@ -7918,15 +7917,15 @@ static void headerSeqSlide(TransInfo *t, const float val[2], char str[MAX_INFO_L
                BLI_snprintf(&tvec[0], NUM_STR_REP_LEN, "%.0f, %.0f", val[0], val[1]);
        }
 
-       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_("Sequence Slide: %s%s, ("), &tvec[0], t->con.text);
+       ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_("Sequence Slide: %s%s, ("), &tvec[0], t->con.text);
 
        if (t->keymap) {
                wmKeyMapItem *kmi = WM_modalkeymap_find_propvalue(t->keymap, TFM_MODAL_TRANSLATE);
                if (kmi) {
-                       ofs += WM_keymap_item_to_string(kmi, false, MAX_INFO_LEN - ofs, str + ofs);
+                       ofs += WM_keymap_item_to_string(kmi, false, UI_MAX_DRAW_STR - ofs, str + ofs);
                }
        }
-       ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_(" or Alt) Expand to fit %s"),
+       ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_(" or Alt) Expand to fit %s"),
                            WM_bool_as_string((t->flag & T_ALT_TRANSFORM) != 0));
 }
 
@@ -7948,7 +7947,7 @@ static void applySeqSlideValue(TransInfo *t, const float val[2])
 
 static void applySeqSlide(TransInfo *t, const int mval[2])
 {
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        snapSequenceBounds(t, mval);
 
@@ -8127,7 +8126,7 @@ static void initTimeTranslate(TransInfo *t)
        t->num.unit_type[0] = B_UNIT_NONE;
 }
 
-static void headerTimeTranslate(TransInfo *t, char str[MAX_INFO_LEN])
+static void headerTimeTranslate(TransInfo *t, char str[UI_MAX_DRAW_STR])
 {
        char tvec[NUM_STR_REP_LEN * 3];
        int ofs = 0;
@@ -8166,10 +8165,10 @@ static void headerTimeTranslate(TransInfo *t, char str[MAX_INFO_LEN])
                        BLI_snprintf(&tvec[0], NUM_STR_REP_LEN, "%.4f", val);
        }
 
-       ofs += BLI_snprintf(str, MAX_INFO_LEN, IFACE_("DeltaX: %s"), &tvec[0]);
+       ofs += BLI_snprintf(str, UI_MAX_DRAW_STR, IFACE_("DeltaX: %s"), &tvec[0]);
 
        if (t->flag & T_PROP_EDIT_ALL) {
-               ofs += BLI_snprintf(str + ofs, MAX_INFO_LEN - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
+               ofs += BLI_snprintf(str + ofs, UI_MAX_DRAW_STR - ofs, IFACE_(" Proportional size: %.2f"), t->prop_size);
        }
 }
 
@@ -8231,7 +8230,7 @@ static void applyTimeTranslateValue(TransInfo *t)
 static void applyTimeTranslate(TransInfo *t, const int mval[2])
 {
        View2D *v2d = (View2D *)t->view;
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        /* calculate translation amount from mouse movement - in 'time-grid space' */
        if (t->flag & T_MODAL) {
@@ -8323,7 +8322,7 @@ static void initTimeSlide(TransInfo *t)
        t->num.unit_type[0] = B_UNIT_NONE;
 }
 
-static void headerTimeSlide(TransInfo *t, const float sval, char str[MAX_INFO_LEN])
+static void headerTimeSlide(TransInfo *t, const float sval, char str[UI_MAX_DRAW_STR])
 {
        char tvec[NUM_STR_REP_LEN * 3];
 
@@ -8343,7 +8342,7 @@ static void headerTimeSlide(TransInfo *t, const float sval, char str[MAX_INFO_LE
                BLI_snprintf(&tvec[0], NUM_STR_REP_LEN, "%.4f", val);
        }
 
-       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("TimeSlide: %s"), &tvec[0]);
+       BLI_snprintf(str, UI_MAX_DRAW_STR, IFACE_("TimeSlide: %s"), &tvec[0]);
 }
 
 static void applyTimeSlideValue(TransInfo *t, float sval)
@@ -8400,7 +8399,7 @@ static void applyTimeSlide(TransInfo *t, const int mval[2])
        const float *range = t->custom.mode.data;
        float minx = range[0];
        float maxx = range[1];
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
 
        /* calculate mouse co-ordinates */
        UI_view2d_region_to_view(v2d, mval[0], mval[1], &cval[0], &cval[1]);
@@ -8473,7 +8472,7 @@ static void initTimeScale(TransInfo *t)
        t->num.unit_type[0] = B_UNIT_NONE;
 }
 
-static void headerTimeScale(TransInfo *t, char str[MAX_INFO_LEN])
+static void headerTimeScale(TransInfo *t, char str[UI_MAX_DRAW_STR])
 {
        char tvec[NUM_STR_REP_LEN * 3];
 
@@ -8482,7 +8481,7 @@ static void headerTimeScale(TransInfo *t, char str[MAX_INFO_LEN])
        else
                BLI_snprintf(&tvec[0], NUM_STR_REP_LEN, "%.4f", t->values[0]);
 
-       BLI_snprintf(str, MAX_INFO_LEN, IFACE_("ScaleX: %s"), &tvec[0]);
+       BLI_snprintf(str, UI_MAX_DRAW_STR, IFACE_("ScaleX: %s"), &tvec[0]);
 }
 
 static void applyTimeScaleValue(TransInfo *t)
@@ -8526,7 +8525,7 @@ static void applyTimeScaleValue(TransInfo *t)
 
 static void applyTimeScale(TransInfo *t, const int UNUSED(mval[2]))
 {
-       char str[MAX_INFO_LEN];
+       char str[UI_MAX_DRAW_STR];
        
        /* handle numeric-input stuff */
        t->vec[0] = t->values[0];
@@ -8558,5 +8557,3 @@ bool checkUseAxisMatrix(TransInfo *t)
 
        return false;
 }
-
-#undef MAX_INFO_LEN
index 20a8ab5c98cc159125dd186bb4f40fda4c0171aa..59442e8978747f1b8d26cb6dbf7598eb652fc5cf 100644 (file)
@@ -46,6 +46,8 @@
 #include "BLI_math_vector.h"
 #include "BLI_string.h"
 
+#include "BLT_translation.h"
+
 #include "BIF_gl.h"
 
 #include "BKE_context.h"
@@ -54,6 +56,8 @@
 #include "BKE_mesh_mapping.h"
 #include "BKE_editmesh.h"
 
+#include "UI_interface.h"
+
 #include "ED_mesh.h"
 #include "ED_uvedit.h"
 #include "ED_screen.h"
@@ -259,25 +263,24 @@ static void stitch_preview_delete(StitchPreviewer *stitch_preview)
        }
 }
 
-#define HEADER_LENGTH 256
-
 /* This function updates the header of the UV editor when the stitch tool updates its settings */
 static void stitch_update_header(StitchState *state, bContext *C)
 {
-       static char str[] =
+       const char *str = IFACE_(
            "Mode(TAB) %s, "
            "(S)nap %s, "
            "(M)idpoints %s, "
            "(L)imit %.2f (Alt Wheel adjust) %s, "
            "Switch (I)sland, "
-           "shift select vertices";
+           "shift select vertices"
+       );
 
-       char msg[HEADER_LENGTH];
+       char msg[UI_MAX_DRAW_STR];
        ScrArea *sa = CTX_wm_area(C);
 
        if (sa) {
-               BLI_snprintf(msg, HEADER_LENGTH, str,
-                            state->mode == STITCH_VERT ? "Vertex" : "Edge",
+               BLI_snprintf(msg, sizeof(msg), str,
+                            state->mode == STITCH_VERT ? IFACE_("Vertex") : IFACE_("Edge"),
                             WM_bool_as_string(state->snap_islands),
                             WM_bool_as_string(state->midpoints),
                             state->limit_dist,
index 768624b1968d688be959a13b7e56772094db7b33..8e4ba4c0afa73000678250cf5485d0b5f70f7918 100644 (file)
@@ -49,6 +49,8 @@
 #include "BLI_uvproject.h"
 #include "BLI_string.h"
 
+#include "BLT_translation.h"
+
 #include "BKE_cdderivedmesh.h"
 #include "BKE_subsurf.h"
 #include "BKE_context.h"
@@ -62,6 +64,8 @@
 
 #include "PIL_time.h"
 
+#include "UI_interface.h"
+
 #include "ED_image.h"
 #include "ED_mesh.h"
 #include "ED_screen.h"
@@ -554,12 +558,13 @@ static void minimize_stretch_iteration(bContext *C, wmOperator *op, bool interac
        RNA_int_set(op->ptr, "iterations", ms->i);
 
        if (interactive && (PIL_check_seconds_timer() - ms->lasttime > 0.5)) {
-               char str[100];
+               char str[UI_MAX_DRAW_STR];
 
                param_flush(ms->handle);
 
                if (sa) {
-                       BLI_snprintf(str, sizeof(str), "Minimize Stretch. Blend %.2f (Press + and -, or scroll wheel to set)", ms->blend);
+                       BLI_snprintf(str, sizeof(str),
+                                    IFACE_("Minimize Stretch. Blend %.2f (Press + and -, or scroll wheel to set)"), ms->blend);
                        ED_area_headerprint(sa, str);
                }
 
index 37919a79e1625ad3482b3db2e0f20428424b2dc7..6ef8965a408ddf2f040fcb4fdeee7d554542db5c 100644 (file)
@@ -2845,7 +2845,6 @@ void WM_OT_straightline_gesture(wmOperatorType *ot)
 #define WM_RADIAL_CONTROL_DISPLAY_SIZE (200 * U.pixelsize)
 #define WM_RADIAL_CONTROL_DISPLAY_MIN_SIZE (35 * U.pixelsize)
 #define WM_RADIAL_CONTROL_DISPLAY_WIDTH (WM_RADIAL_CONTROL_DISPLAY_SIZE - WM_RADIAL_CONTROL_DISPLAY_MIN_SIZE)
-#define WM_RADIAL_CONTROL_HEADER_LENGTH 180
 #define WM_RADIAL_MAX_STR 10
 
 typedef struct {
@@ -2871,7 +2870,7 @@ typedef struct {
 static void radial_control_update_header(wmOperator *op, bContext *C)
 {
        RadialControl *rc = op->customdata;
-       char msg[WM_RADIAL_CONTROL_HEADER_LENGTH];
+       char msg[UI_MAX_DRAW_STR];
        ScrArea *sa = CTX_wm_area(C);
        Scene *scene = CTX_data_scene(C);
        
@@ -2879,34 +2878,33 @@ static void radial_control_update_header(wmOperator *op, bContext *C)
                if (hasNumInput(&rc->num_input)) {
                        char num_str[NUM_STR_REP_LEN];
                        outputNumInput(&rc->num_input, num_str, &scene->unit);
-                       BLI_snprintf(msg, WM_RADIAL_CONTROL_HEADER_LENGTH, "%s: %s", RNA_property_ui_name(rc->prop), num_str);
-                       ED_area_headerprint(sa, msg);
+                       BLI_snprintf(msg, sizeof(msg), "%s: %s", RNA_property_ui_name(rc->prop), num_str);
                }
                else {
                        const char *ui_name = RNA_property_ui_name(rc->prop);
                        switch (rc->subtype) {
                                case PROP_NONE:
                                case PROP_DISTANCE:
-                                       BLI_snprintf(msg, WM_RADIAL_CONTROL_HEADER_LENGTH, "%s: %0.4f", ui_name, rc->current_value);
+                                       BLI_snprintf(msg, sizeof(msg), "%s: %0.4f", ui_name, rc->current_value);
                                        break;
                                case PROP_PIXEL:
-                                       BLI_snprintf(msg, WM_RADIAL_CONTROL_HEADER_LENGTH, "%s: %d", ui_name, (int)rc->current_value); /* XXX: round to nearest? */
+                                       BLI_snprintf(msg, sizeof(msg), "%s: %d", ui_name, (int)rc->current_value); /* XXX: round to nearest? */
                                        break;
                                case PROP_PERCENTAGE:
-                                       BLI_snprintf(msg, WM_RADIAL_CONTROL_HEADER_LENGTH, "%s: %3.1f%%", ui_name, rc->current_value);
+                                       BLI_snprintf(msg, sizeof(msg), "%s: %3.1f%%", ui_name, rc->current_value);
                                        break;
                                case PROP_FACTOR:
-                                       BLI_snprintf(msg, WM_RADIAL_CONTROL_HEADER_LENGTH, "%s: %1.3f", ui_name, rc->current_value);
+                                       BLI_snprintf(msg, sizeof(msg), "%s: %1.3f", ui_name, rc->current_value);
                                        break;
                                case PROP_ANGLE:
-                                       BLI_snprintf(msg, WM_RADIAL_CONTROL_HEADER_LENGTH, "%s: %3.2f", ui_name, RAD2DEGF(rc->current_value));
+                                       BLI_snprintf(msg, sizeof(msg), "%s: %3.2f", ui_name, RAD2DEGF(rc->current_value));
                                        break;
                                default:
-                                       BLI_snprintf(msg, WM_RADIAL_CONTROL_HEADER_LENGTH, "%s", ui_name); /* XXX: No value? */
+                                       BLI_snprintf(msg, sizeof(msg), "%s", ui_name); /* XXX: No value? */
                                        break;
                        }
-                       ED_area_headerprint(sa, msg);
                }
+               ED_area_headerprint(sa, msg);
        }
 }