ui/wpf/UIcore/TextArea.cs

Sun, 29 Sep 2024 18:51:03 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sun, 29 Sep 2024 18:51:03 +0200
branch
newapi
changeset 315
144c2b4683cb
parent 135
b9dc9cdfa23a
permissions
-rw-r--r--

use GtkFileDialog on newer gtk4 versions

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