public YAppReleaseManager(YAppInterface appInterface) { this._appInterface = appInterface; this._appName = appInterface.GetAppName(); this._platform = appInterface.GetPlatform(); string fullVersionStr = appInterface.GetVersion(); int pos = fullVersionStr.LastIndexOf('.'); if (pos < 0) { throw new ArgumentException("Invalid version string:" + fullVersionStr); } string svnVersionStr = fullVersionStr.Substring(pos + 1); if (svnVersionStr == "PATCH_WITH_BUILD") { this._versionPrefix = fullVersionStr.Substring(0, pos); this._svnVersion = 1234; } else { this._versionPrefix = fullVersionStr.Substring(0, pos); this._svnVersion = Convert.ToInt32(svnVersionStr); } }
private void refreshUI(UIstates state) { switch (state) { case (UIstates.UPDATENOTAVAILABLE): progressBar1.Visible = false; CancelDownloadButton.Visible = false; DownloadLabel.Visible = false; buttonUpdate.Visible = true; buttonIgnore.Visible = true; buttonRemindeMe.Visible = true; buttonRelease.Visible = true; label1.Visible = true; labelNewVersion.Visible = true; labelLinkDecoration.Visible = true; linkLabel.Visible = true; checkUpdate.Visible = true; labelVersion.Visible = true; buttonUpdate.Enabled = false; buttonIgnore.Enabled = false; buttonRemindeMe.Enabled = false; buttonRelease.Enabled = false; label1.Text = String.Format("{0} is up to date:", _appInterface.GetAppName()); labelNewVersion.Text = _appInterface.GetVersion(); labelVersion.Text = "Current version:"; labelLinkDecoration.Visible = false; linkLabel.Visible = false; break; case (UIstates.UPDATEAVAILABLE): progressBar1.Visible = false; CancelDownloadButton.Visible = false; DownloadLabel.Visible = false; buttonUpdate.Visible = true; buttonIgnore.Visible = true; buttonRemindeMe.Visible = true; buttonRelease.Visible = true; checkUpdate.Visible = true; label1.Visible = true; labelVersion.Visible = true; labelNewVersion.Visible = true; labelLinkDecoration.Visible = true; linkLabel.Visible = true; label1.Text = String.Format("Updates are available for the {0} application:", _appInterface.GetAppName()); buttonUpdate.Enabled = true; buttonIgnore.Enabled = true; buttonRemindeMe.Enabled = true; linkLabel.Text = release.link; labelNewVersion.Text = _appReleaseManager.FormatVersion(release.version); break; case (UIstates.UPDATEDOWNLOADING): progressBar1.Visible = true; CancelDownloadButton.Visible = true; DownloadLabel.Visible = true; buttonUpdate.Visible = false; buttonIgnore.Visible = false; buttonRemindeMe.Visible = false; buttonRelease.Visible = false; label1.Visible = false; labelNewVersion.Visible = false; labelLinkDecoration.Visible = false; linkLabel.Visible = false; checkUpdate.Visible = false; labelVersion.Visible = false; break; } }