Beispiel #1
0
        /// <summary>
        ///     Add content and settings to the UI
        /// </summary>
        private void LoadUi()
        {
            Logger.Log(LogLevel.Info, "StarterTab", "Loading UI");
            // Add all servers to the list
            CBServerType.Items.Clear();
            foreach (string servername in _servers.Keys)
            {
                CBServerType.Items.Add(servername);
            }

            int selectedServer = Config.ReadInt("Starter", "ServerType", 0);

            // check if this server id exists
            if (selectedServer < CBServerType.Items.Count)
            {
                CBServerType.SelectedIndex = selectedServer;
            }
            else
            {
                if (CBServerType.Items.Count > 0)
                {
                    CBServerType.SelectedIndex = 0;
                }
            }
            LoadServer();
            //Selecting a server will enable/disable the available/unavailable features

            // Cache total amount of ram, set maximum values
            int totalMb = Convert.ToInt32(MemoryCounter.TotalMemoryMb());

            TBMaxRam.Maximum  = totalMb;
            TBMinRam.Maximum  = totalMb;
            NumMaxRam.Maximum = totalMb;
            NumMinRam.Maximum = totalMb;

            int minRamValue = Config.ReadInt("Starter", "MinRam", 128);
            int maxRamValue = Config.ReadInt("Starter", "MaxRam", 1024);

            // check for sub-zero values
            if (minRamValue < 0)
            {
                minRamValue = 0;
            }
            if (maxRamValue < 0)
            {
                maxRamValue = 0;
            }

            // value should be less than maximum value
            if (maxRamValue < NumMaxRam.Maximum)
            {
                NumMaxRam.Value = maxRamValue;
            }
            else
            {
                NumMaxRam.Value = 1024;
            }
            if (minRamValue < NumMinRam.Maximum)
            {
                NumMinRam.Value = minRamValue;
            }
            else
            {
                NumMaxRam.Value = 1024;
            }

            // Add options for installed java versions
            CBJavaVersion.Items.Clear();
            if (JavaApi.IsInstalled(JavaVersion.Jre6X32))
            {
                CBJavaVersion.Items.Add("Java 6 - 32 bit");
            }
            if (JavaApi.IsInstalled(JavaVersion.Jre6X64))
            {
                CBJavaVersion.Items.Add("Java 6 - 64 bit");
            }
            if (JavaApi.IsInstalled(JavaVersion.Jre7X32))
            {
                CBJavaVersion.Items.Add("Java 7 - 32 bit");
            }
            if (JavaApi.IsInstalled(JavaVersion.Jre7X64))
            {
                CBJavaVersion.Items.Add("Java 7 - 64 bit");
            }
            if (JavaApi.IsInstalled(JavaVersion.Jre8X32))
            {
                CBJavaVersion.Items.Add("Java 8 - 32 bit");
            }
            if (JavaApi.IsInstalled(JavaVersion.Jre8X64))
            {
                CBJavaVersion.Items.Add("Java 8 - 64 bit");
            }

            int javaType = Config.ReadInt("Starter", "JavaVersion", 0);

            if (javaType < CBJavaVersion.Items.Count)
            {
                CBJavaVersion.SelectedIndex = javaType;
            }
            else
            {
                if (CBJavaVersion.Items.Count > 0)
                {
                    CBJavaVersion.SelectedIndex = 0;
                }
            }

            TxtJarFile.Text = Config.ReadString("Starter", "JarFile", "");
            TxtOptArg.Text  = Config.ReadString("Starter", "OptionalArguments", "");
            TxtOptFlag.Text = Config.ReadString("Starter", "OptionalFlags", "");

            Logger.Log(LogLevel.Info, "StarterTab", "UI Loaded");
            _ready = true;
        }