Exemplo n.º 1
0
        private void Load()
        {
            var webclient = new WebClient();

            try
            {
                string version = webclient.DownloadString("http://eddy5641.github.io/LegendaryClient/Releases.Json");

                var serializer = new JavaScriptSerializer();
                var versions   = serializer.Deserialize <LCVersionList>(version);
                int I          = 0;
                foreach (LCVersions var in versions.LCVersions)
                {
                    var Version = new VersionSelect
                    {
                        DLTag      = { Text = var.DownloadLink },
                        VersionTag = { Text = var.VersionId },
                        LCVersion  = { Text = "LegenadryClient V" + var.VersionId }
                    };

                    if (var.IsBeta)
                    {
                        Version.ExtraStuff.Text = "Beta";
                    }
                    else if (var.IsPrerelease)
                    {
                        Version.ExtraStuff.Text = "Pre-Release";
                    }
                    else
                    {
                        Version.ExtraStuff.Text = "Release";
                    }

                    VersionSelectInstall.Items.Add(Version);
                    I++;
                }
                XVersino.Content = "There are " + I + " versions that can be downloaded";
            }
            catch
            {
                Logic.Logic.SwichPage <Failed>();
            }
        }
        private void Load()
        {
            var webclient = new WebClient();
            try
            {
                string version = webclient.DownloadString("http://eddy5641.github.io/LegendaryClient/Releases.Json");

                var serializer = new JavaScriptSerializer();
                var versions = serializer.Deserialize<LCVersionList>(version);
                int I = 0;
                foreach (LCVersions var in versions.LCVersions)
                {
                    var Version = new VersionSelect
                    {
                        DLTag = {Text = var.DownloadLink},
                        VersionTag = {Text = var.VersionId},
                        LCVersion = {Text = "LegenadryClient V" + var.VersionId}
                    };

                    if (var.IsBeta)
                        Version.ExtraStuff.Text = "Beta";
                    else if (var.IsPrerelease)
                        Version.ExtraStuff.Text = "Pre-Release";
                    else
                        Version.ExtraStuff.Text = "Release";

                    VersionSelectInstall.Items.Add(Version);
                    I++;
                }
                XVersino.Content = "There are " + I + " versions that can be downloaded";
            }
            catch
            {
                Logic.Logic.SwichPage<Failed>();
            }
        }
Exemplo n.º 3
0
        private void AppsTree_AfterSelect(object sender, TreeViewEventArgs e)
        {
            SuspendLayout();


            Apps.CollectionNode app = (Apps.CollectionNode)e.Node.Tag;

            #region Name and icon
            AppTitle.Text = app.Name;
            if (app.Docs != null)
            {
                AppIcon.Image = app.Docs.Icon;
                AppTitle.Left = AppTitleOriginalX; // Restore app title position
            }
            else
            {
                AppIcon.Image = null;
                AppTitle.Left = AppIcon.Left; // Hide app icon (reuse it's space)
            }
            #endregion

            #region Versions
            VersionSelect.BeginUpdate();


            VersionSelect.Items.Clear();
            if (app.Versions.Count > 0)
            {
                VersionSelect.Visible  = true;
                VersionActions.Visible = true;
                label1.Visible         = true;
                VersionSelect.Tag      = app.Versions;
                foreach (var item in app.Versions)
                {
                    VersionSelect.Items.Add(item.Name);
                }
                VersionSelect.SelectedIndex = VersionSelect.Items.Count - 1;
            }
            else
            {
                VersionSelect.Visible  = false;
                VersionActions.Visible = false;
                label1.Visible         = false;
            }

            VersionSelect.EndUpdate();
            #endregion

            #region Docs
            Tabs.SuspendLayout();

            if (app.Docs == null)
            {
                Tabs.Visible = false;
            }
            else
            {
                Tabs.Visible = true;

                #region Pages
                foreach (TabPage tab in Tabs.TabPages)
                {
                    if (tab == ScreenshotTab)
                    {
                        continue;
                    }
                    Tabs.TabPages.Remove(tab);
                }

                foreach (var page in app.Docs.Pages)
                {
                    var tab = new TabPage(page[0]);

                    var browser = new WebBrowser();
                    browser.Dock = DockStyle.Fill;
                    if ((page[2].EndsWith(".html", true, System.Globalization.CultureInfo.CurrentCulture)) ||
                        (page[2].EndsWith(".htm", true, System.Globalization.CultureInfo.CurrentCulture)) ||
                        (page[2].EndsWith(".xhtml", true, System.Globalization.CultureInfo.CurrentCulture)))
                    {
                        browser.Url = new Uri("file://" + (page[2].Replace('\\', '/')));
                    }
                    else
                    {
                        browser.Url = new Uri("about:blank");
                        browser.Document.Write(page[1]);
                    }
                    browser.Navigating      += webBrowser_Navigating;
                    browser.Tag              = page[2];
                    browser.ContextMenuStrip = DocPageContextMenu;
                    browser.IsWebBrowserContextMenuEnabled = false;
                    tab.Controls.Add(browser);

                    Tabs.TabPages.Insert(Math.Max(Tabs.TabPages.Count - 1, 0), tab);
                }

                if ((Tabs.TabPages.Count > 1) && (Tabs.TabPages.Contains(ScreenshotTab)))
                {
                    var docPaths = from TabPage tab in Tabs.TabPages
                                   where tab != ScreenshotTab
                                   select tab;

                    Tabs.SelectedTab = docPaths.Last();
                }
                #endregion

                #region Screen shots

                if (app.Docs.ScreenShots == null)
                {
                    if (Tabs.TabPages.Contains(ScreenshotTab))
                    {
                        Tabs.TabPages.Remove(ScreenshotTab);
                    }
                }
                else
                {
                    ScreenshotTab.Text = app.Docs.ScreenShotsDirectoryName;
                    if (!Tabs.TabPages.Contains(ScreenshotTab))
                    {
                        Tabs.TabPages.Add(ScreenshotTab);
                    }

                    Screenshots.Controls.Clear();
                    foreach (var item in app.Docs.ScreenShots)
                    {
                        var pb = new PictureBox();
                        pb.Image    = item;
                        pb.SizeMode = PictureBoxSizeMode.Zoom;
                        pb.Size     = GetScreenShotSize(pb, Screenshots);
                        pb.Cursor   = Cursors.Hand;
                        pb.Click   += new EventHandler((object sender2, EventArgs e2) =>
                        {
                            if ((sender2 as PictureBox).Image.Tag != null)
                            {
                                Process.Start((sender2 as PictureBox).Image.Tag as string);
                            }
                        });
                        Screenshots.Controls.Add(pb);
                    }
                }
                #endregion
            }

            Tabs.ResumeLayout();
            #endregion

            #region Actions
            Actions.SuspendLayout();

            Actions.Controls.Clear();
            foreach (var item in app.Actions)
            {
                Button btn = new Button();
                btn.Size     = new Size(75, 23);
                btn.Text     = item.Name;
                btn.Tag      = item;
                btn.Click   += new EventHandler(OpenResourceButton);
                btn.MouseUp += new MouseEventHandler(OpenResourceFolderButton);
                Actions.Controls.Add(btn);
            }

            Actions.ResumeLayout();
            #endregion


            ResumeLayout();

            CurrentNode = app;
        }