Exemplo n.º 1
0
        /// <summary>
        /// </summary>
        private void ValidateState()
        {
            BuildSelectionRule   SelectionRule   = (BuildSelectionRule)selectionRuleComboBox.SelectedIndex;
            BuildSelectionFilter SelectionFilter = (BuildSelectionFilter)selectionFilterComboBox.SelectedIndex;

            bool IsScmSelectionRule = SelectionFilter == BuildSelectionFilter.BuildTimeBeforeScmSyncTime ||
                                      SelectionFilter == BuildSelectionFilter.BuildTimeAfterScmSyncTime ||
                                      SelectionFilter == BuildSelectionFilter.BuildNameBelowFileContents ||
                                      SelectionFilter == BuildSelectionFilter.BuildNameAboveFileContents ||
                                      SelectionFilter == BuildSelectionFilter.BuildNameEqualsFileContents;

            bool IsScmFileRule = SelectionFilter == BuildSelectionFilter.BuildNameBelowFileContents ||
                                 SelectionFilter == BuildSelectionFilter.BuildNameAboveFileContents ||
                                 SelectionFilter == BuildSelectionFilter.BuildNameEqualsFileContents;

            addDownloadButton.Enabled = downloadFileSystemTree.SelectedPath.Length > 0 &&
                                        nameTextBox.Text.Trim().Length > 3 &&
                                        !nameTextBox.Text.Contains("$") &&
                                        priorityComboBox.SelectedIndex >= 0 &&
                                        (
                !IsScmSelectionRule ||
                workspaceComboBox.Enabled && workspaceComboBox.SelectedIndex >= 0
                                        )
                                        &&
                                        (
                !IsScmFileRule ||
                scmFileTextBox.Enabled && scmFileTextBox.Text.Trim().Length >= 3
                                        );

            bool HasSelectedBuild = downloadFileSystemTree.SelectedManifestId != Guid.Empty;

            autoUpdateCheckBox.Visible      = !HasSelectedBuild;
            buildSelectionRulePanel.Visible = !HasSelectedBuild;
            scmSettingsPanel.Visible        = !HasSelectedBuild && IsScmSelectionRule;
            scmFilePanel.Visible            = !HasSelectedBuild && IsScmFileRule;
        }
Exemplo n.º 2
0
        /// <summary>
        /// </summary>
        /// <param name="Name"></param>
        /// <param name="VirtualPath"></param>
        /// <param name="Priority"></param>
        /// <param name="KeepUpToDate"></param>
        public DownloadState AddDownload(string Name, string VirtualPath, int Priority, BuildSelectionRule Rule, BuildSelectionFilter Filter, string SelectionFilterFilePath, string ScmWorkspaceLocation, bool AutomaticallyUpdate, bool AutomaticallyInstall, string InstallDeviceName, string InstallLocation, List <Guid> IncludeTags, List <Guid> ExcludeTags, bool DeleteOnComplete = false)
        {
            DownloadState State = new DownloadState();

            State.Id                      = Guid.NewGuid();
            State.Name                    = Name;
            State.VirtualPath             = VirtualPath;
            State.Priority                = Priority;
            State.UpdateAutomatically     = AutomaticallyUpdate;
            State.InstallAutomatically    = AutomaticallyInstall;
            State.InstallDeviceName       = InstallDeviceName;
            State.InstallLocation         = InstallLocation;
            State.SelectionRule           = Rule;
            State.SelectionFilter         = Filter;
            State.SelectionFilterFilePath = SelectionFilterFilePath;
            State.ScmWorkspaceLocation    = ScmWorkspaceLocation;
            State.IncludeTags             = IncludeTags;
            State.ExcludeTags             = ExcludeTags;
            State.IsAutomaticReplication  = DeleteOnComplete;

            StateCollection.States.Add(State);
            AreStatesDirty = true;

            return(State);
        }