public void adjust(final TextView view, final boolean forceNoMovement) {
        if (!forceNoMovement && (useHtml || linkifyMask != 0 || useMarkdown)) {
            view.setMovementMethod(LinkMovementMethod.getInstance());
        }
        if (image != null || imageHeightInDp > 0) {
            final Drawable imageDrawable = (image == null ? ImageParam.id(android.R.color.transparent) : image).getAsDrawable(view.getContext());

            //if wanted imageSize is set explicitely -> use it. Otherwise deduct a sensible default from text size
            final int imageWidthInPixel;
            final int imageHeightInPixel;
            if (imageHeightInDp == IMAGE_SIZE_EQUAL_TEXT_SIZE) {
                imageHeightInPixel = (int) (view.getTextSize());
                imageWidthInPixel = (int) (view.getTextSize());
            } else if (imageHeightInDp == IMAGE_SIZE_INTRINSIC_BOUND) {
                imageHeightInPixel = imageDrawable.getIntrinsicHeight();
                imageWidthInPixel = imageDrawable.getIntrinsicWidth();
            } else if (imageHeightInDp < 0 || imageWidthInDp < 0) {
                imageHeightInPixel = (int) (view.getTextSize() * 1.5f);
                imageWidthInPixel = (int) (view.getTextSize() * 1.5f);
            } else {
                imageHeightInPixel = ViewUtils.dpToPixel(imageHeightInDp);
                imageWidthInPixel = ViewUtils.dpToPixel(imageWidthInDp);
            }
            imageDrawable.setBounds(0, 0, imageWidthInPixel, imageHeightInPixel);
            view.setCompoundDrawables(imageDrawable, null, null, null);

            // set image tint (if given)
            if (imageTintColor != 1) {
                final Drawable[] d = view.getCompoundDrawables();
                if (d.length > 0) {
                    d[0].setTint(imageTintColor);
                }
            }
            //Add margin between image and text (support various screen densities)
            view.setCompoundDrawablePadding(ViewUtils.dpToPixel(10));
        }

    }
Adjusts TextView properties other than the text itself so it conforms to this TextParam (e.g. MovementMethod)
Parameter forceNoMovement allows to force not setting a movement method even if other params suggest. This is important
if TextParam is used in a context where resulting TextView needs to remain clickable by itself
main/src/main/java/cgeo/geocaching/ui/TextParam.java