FormManager.cs 2.1 KB
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace TSA_V
{
    public class FormManager
    {
        public static Color buttonColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));



        private static string skinFileName = Application.StartupPath + @"\Skins\OneBlue.ssk";

        public static string SkinFileName
        {
            set
            {
            }
            get
            {
                if (SkinsList.Count <= 0)
                {
                    SkinsList = GetSkinList();
                }
                if (SkinsList.Count > 0 && index >= 0)
                {
                    return SkinsList[index];
                }
                return skinFileName;
            }
        }

        private static int index = -1;

        public static void DefaultSkin()
        {
            index = -1;
        }

        public static void NextSkin()
        {
            index++;
            if (index >= SkinsList.Count)
            {
                index = 0;
            }
        }

        public static List<string> SkinsList = new List<string>();

        private static List<string> GetSkinList()
        {
            List<string> returnList = new System.Collections.Generic.List<string>();
            string[] fileList = Directory.GetFiles(Application.StartupPath + @"\Skins");
            foreach (string sr in fileList)
            {
                if (sr.Contains(".ssk"))
                {
                    returnList.Add(sr);
                }
            }
            return returnList;
        }


        public static Lazy<Asa.UserManagement> userManager = new Lazy<Asa.UserManagement>(() => {
            Asa.UserManagement user = new Asa.UserManagement("defaultAppender");
            user.DatabasePath = Application.StartupPath + @"\config\user.sqlite3";
            return user;
        });

        public static Asa.Users UserInfo = null;
    }
}