// get pack icon
        public Image GetPackIcon(MCAvailablePack Pack)
        {
            MemoryStream ms = Http.DownloadToStream(_sPackServer + @"/packs/" + Pack.Name + @"/" + Pack.Name + @".png");

            if (Directory.Exists(_sPacksDir + @"\" + Pack.Name))
            {
                FileStream file = new FileStream(_sPacksDir + @"\" + Pack.Name + @"\" + Pack.Name + ".png", FileMode.Create, FileAccess.Write);
                ms.WriteTo(file);
            }

            return(Image.FromStream(ms));
        }
        private MCAvailablePackVersion GetAvailablePackVersion(string sPackName, string sPackVersion)
        {
            MCAvailablePack pack = GetAvailablePack(sPackName);

            foreach (MCAvailablePackVersion version in pack.Versions)
            {
                if (version.Version.Equals(sPackVersion))
                {
                    return(version);
                }
            }

            return(new MCAvailablePackVersion());
        }
        public string GetRecommendedVersion(string sPackName)
        {
            if (Offline == false)
            {
                MCAvailablePack Pack = GetAvailablePack(sPackName);
                return(Pack.RecommendedVersion);
            }

            else
            {
                MCPacksInstalledPack Pack = GetInstalledPack(sPackName);
                return(Pack.CurrentVersion);
            }
        }
Exemple #4
0
        private void LstPacks_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (LstPacks.SelectedItems.Count == 1)
            {
                Launcher L = new Launcher(Offline);
                // Clear dropdown
                CmbPackVersions.Items.Clear();
                if (Offline == false)
                {
                    MCAvailablePack APack = L.GetAvailablePack(LstPacks.SelectedItems[0].Text);

                    CmbPackVersions.Items.Add("Recommended (" + APack.RecommendedVersion + ")");
                    // Load Versions in Dropdown
                    foreach (MCAvailablePackVersion version in APack.Versions)
                    {
                        CmbPackVersions.Items.Add(version.Version);
                    }

                    // select version in combo depend on if pack is installed and version number
                    if (L.IsPackInstalled(APack.Name) == true)
                    {
                        MCPacksInstalledPack IPack = L.GetInstalledPack(APack.Name);
                        if (IPack.SelectedVersion == "recommended")
                        {
                            CmbPackVersions.SelectedIndex = 0;
                        }
                        else
                        {
                            CmbPackVersions.SelectedIndex = CmbPackVersions.FindStringExact(IPack.CurrentVersion);
                        }
                    }
                    else
                    {
                        CmbPackVersions.SelectedIndex = 0;
                    }
                    WebPackDetails.Navigate(Launcher._sPackServer + @"/packs/" + APack.Name + @"/" + APack.Name + @".html");
                    MnuDownloadPack.Enabled = true;
                }
                else
                {
                    MCPacksInstalledPack IPack = L.GetInstalledPack(LstPacks.SelectedItems[0].Text);
                    CmbPackVersions.Items.Add(IPack.CurrentVersion);
                    CmbPackVersions.SelectedIndex = 0;
                    MnuDownloadPack.Enabled       = false;
                }
                BtnStart.Enabled        = true;
                MnuEditPack.Enabled     = true;
                CmbPackVersions.Enabled = true;
            }
            else
            {
                CmbPackVersions.Items.Clear();
                CmbPackVersions.Items.Add("Kein Pack gewählt");
                CmbPackVersions.SelectedIndex = 0;
                WebPackDetails.Navigate("about:blank");
                BtnStart.Enabled        = false;
                MnuEditPack.Enabled     = false;
                CmbPackVersions.Enabled = false;
                MnuDownloadPack.Enabled = false;
            }
        }