예제 #1
0
        /// <summary>
        /// performs auto updates from the default feed.
        /// </summary>
        public static void autoUpdateController(AppManager app)
        {
            Packages packages = new Packages();
            var feeds = FeedManager.getAutoUpdateFeeds();

            if (feeds.Count > 0)
            {
                Update update = new Update(packages, app);
                update.autoUpdate();
            }
        }
예제 #2
0
        public Paging(Packages packageHelper, ListViewHelper adder)
        {
            this.packages = packageHelper;
            this.add = adder;

            //find name of app
            string name = Assembly.GetEntryAssembly().GetName().Name;
            int i;
            for (i = 0; i < name.Length; i++)
            {
                if (!Char.IsLetter(name[i]))
                    break;
            }
            AppName = name.Substring(0, i);
        }
예제 #3
0
        public Update(Packages package, AppManager Appmanager)
        {
            this.packages = package;
            this.App = Appmanager;

            //find name of app
            string name = Assembly.GetEntryAssembly().GetName().Name;
            int i;
            for (i = 0; i < name.Length; i++)
            {
                if (!Char.IsLetter(name[i]))
                    break;
            }
            AppName = name.Substring(0, i);
        }
예제 #4
0
 public GetPackage(Packages packageHelper)
 {
     this.packages = packageHelper;
 }
예제 #5
0
 public GetPackage(Packages packageHelper)
 {
     packages = packageHelper;
 }
예제 #6
0
 public Update(Packages package, ListViewHelper adder, AppManager Appmanager)
 {
     this.packages = package;
     this.Add = adder;
     this.App = Appmanager;
 }
예제 #7
0
        //Cycle through feeds from settings and call autoupdate function. If any updates occur, show message box.
        public static void autoUpdateController(AppManager app, ExtensionManagerForm form)
        {
            List<String> updatesOccurred = new List<String>();
            Packages packages = new Packages();
            System.Collections.Specialized.StringCollection feeds = FeedManager.getAutoUpdateFeeds();
            Update update = new Update(packages, null, app);

            if (update.IsOnline() == true)
            {
                foreach (String feed in feeds)
                {
                    packages.SetNewSource(feed);
                    update = new Update(packages, null, app);
                    updatesOccurred.AddRange(update.autoUpdate());
                }
            }

            if (updatesOccurred.Count > 0)
            {
                String begin;
                if (updatesOccurred.Count == 1){ begin = "The following extension has been updated:"; }
                else{ begin = "The following extensions have been updated:"; }

                StringBuilder sb = new StringBuilder();
                sb.AppendLine(begin);
                sb.AppendLine();
                for (int i = 0; i < updatesOccurred.Count && i<25; i++)
                {
                    sb.AppendLine("-" + updatesOccurred.ElementAt(i));
                }
                if (updatesOccurred.Count > 25) { sb.AppendLine("..."); }
                sb.AppendLine();
                sb.Append("Updates will finish when HydroDesktop is restarted.");
                sb.AppendLine("\n\n      Do you want to restart HydroDesktop now?");

                DialogResult dialogResult = MessageBox.Show(sb.ToString(), "Update Complete", MessageBoxButtons.YesNo);
                if (dialogResult == DialogResult.Yes)
                {
                    System.Diagnostics.Process.Start(Application.ExecutablePath);
                    Environment.Exit(-1);
                }
                form.AutoUpdateRestartNeccesary();
            }
        }
예제 #8
0
 public Paging(Packages packageHelper, ListViewHelper adder)
 {
     this.packages = packageHelper;
     this.add = adder;
 }
예제 #9
0
 public Update(Packages package, ListViewHelper adder, AppManager Appmanager)
 {
     this.packages = package;
     this.Add      = adder;
     this.App      = Appmanager;
 }
예제 #10
0
 public Paging(Packages packageHelper, ListViewHelper adder)
 {
     this.packages = packageHelper;
     this.add      = adder;
 }
예제 #11
0
 public PackageListHelper(Packages packageHelper)
 {
     this.packages = packageHelper;
 }
예제 #12
0
        //Cycle through feeds from settings and call autoupdate function. If any updates occur, show message box.
        public static void autoUpdateController(AppManager app, ExtensionManagerForm form)
        {
            List<String> updatesOccurred = new List<String>();
            Packages packages = new Packages();
            System.Collections.Specialized.StringCollection feeds = FeedManager.getAutoUpdateFeeds();
            foreach (String feed in feeds)
            {
                packages.SetNewSource(feed);
                Update update = new Update(packages, null, app);
                updatesOccurred.AddRange(update.autoUpdate());
            }

            if (updatesOccurred.Count > 0)
            {
                String begin;
                if (updatesOccurred.Count == 1){ begin = "The following extension has been updated:"; }
                else{ begin = "The following extensions have been updated:"; }

                StringBuilder sb = new StringBuilder();
                sb.AppendLine(begin);
                sb.AppendLine();
                for (int i = 0; i < updatesOccurred.Count && i<25; i++)
                {
                    sb.AppendLine(updatesOccurred.ElementAt(i));
                }
                if (updatesOccurred.Count > 25) { sb.AppendLine("..."); }
                sb.AppendLine();
                sb.Append("Updates will finish when HydroDesktop is restarted.");

                MessageBox.Show(sb.ToString());
                form.AutoUpdateRestartNeccesary();
            }
        }