ui/wpf/UIcore/TextArea.cs

Thu, 15 Feb 2024 21:33:08 +0100

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Thu, 15 Feb 2024 21:33:08 +0100
branch
newapi
changeset 262
81778b9589d0
parent 135
b9dc9cdfa23a
permissions
-rw-r--r--

port progressbar to new API (GTK)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace UI
{
    public class TextArea : System.Windows.Controls.TextBox
    {
        public TextArea(Container container, String text, bool textarea) : base()
        {
            bool fill = false;
            if (textarea)
            {
                AcceptsReturn = true;
                IsUndoEnabled = false; // we need our own undo stack
                VerticalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Auto;
                HorizontalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Auto;
                fill = true;
            }
            else
            {
                HorizontalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Auto;
                MinWidth = 15;
            }

            if (text != null)
            {
                Text = text;
            }

            container.Add(this, fill);
        }


        // ------------------ UiText methods ------------------

        public void SetText(String str)
        {
            Text = str;
        }

        public String GetText()
        {
            return Text;
        }

        public String GetSubString(int begin, int end)
        {
            return null;
        }

        public void Insert(int pos, String str)
        {

        }

        public int Position()
        {
            return CaretIndex;
        }

        public int Selection()
        {
            return 0;
        }

        public int Length()
        {
            return Text.Length;
        }

        public void Remove(int begin, int end)
        {

        }
    }
}

mercurial