public TextEditRenderBox( RootGraphic rootgfx, int width, int height, bool isMultiLine, bool isEditable = true) : base(rootgfx, width, height) { _isEditable = isEditable; if (isEditable) { GlobalCaretController.RegisterCaretBlink(rootgfx); // _myCaret = new CaretRenderElement(rootgfx, 2, 17); _myCaret.TransparentForAllEvents = true; } RenderBackground = RenderCaret = RenderSelectionRange = RenderMarkers = true; // MayHasViewport = true; BackgroundColor = Color.White;// Color.Transparent; _currentSpanStyle = new TextSpanStyle(); _currentSpanStyle.FontColor = Color.Black;//set default _currentSpanStyle.ReqFont = rootgfx.DefaultTextEditFontInfo; // _textLayer = new EditableTextFlowLayer(this); //presentation _internalTextLayerController = new InternalTextLayerController(_textLayer); //controller _isMultiLine = isMultiLine; if (isMultiLine) { _textLayer.SetUseDoubleCanvas(false, true); } else { _textLayer.SetUseDoubleCanvas(true, false); } NeedClipArea = true; IsBlockElement = false; NumOfWhitespaceForSingleTab = 4;//default?, configurable? }
public TextEditRenderBox( int width, int height, bool isMultiLine, bool isEditable = true) : base(width, height, isMultiLine) { _isEditable = isEditable; if (isEditable) { GlobalCaretController.RegisterCaretBlink(GlobalRootGraphic.CurrentRootGfx); // _myCaret = new EditorCaret(2, 17); RenderCaret = true; } NumOfWhitespaceForSingleTab = 4;//default?, configurable? }