ui/wpf/UIcore/Controls.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;
using System.Windows;
using System.Windows.Controls;

namespace UI
{  
    public class Controls
    {
        public static Button Button(Container container, String label, RoutedEventHandler e)
        {
            Button button = new Button();
            button.Content = label;
            container.Add(button, false);

            button.Click += e;

            return button;
        }

        public static Label Label(Container container, String str, int alignment)
        {
            HorizontalAlignment a;
            switch (alignment)
            {
                case 0: a = HorizontalAlignment.Left; break;
                case 1: a = HorizontalAlignment.Right; break;
                case 2: a = HorizontalAlignment.Center; break;
                default: a = HorizontalAlignment.Left; break;
            }

            Label label = new Label();
            label.HorizontalAlignment = a;
            label.Content = str;
            container.Add(label, false);

            return label;
        }

        public static Label Space(Container container)
        {
            return Label(container, null, 2);
        }

        public static Separator Separator(Container container)
        {
            Separator separator = new Separator();
            container.Add(separator, false);
            return separator;
        }
    }
}

mercurial