void btnRemoveUsers_Click(object sender, EventArgs e)
        {
            List <ExtUserRightInfo> usersToRemove = new List <ExtUserRightInfo>(); string userNames = string.Empty;

            foreach (DataGridViewRow row in dgvUsers.SelectedRows)
            {
                ExtUserRightInfo extUserInfo = row.Tag as ExtUserRightInfo;
                VCAdministrator.AddUnitToMessage(ref userNames, extUserInfo.userInfo.username);
                if (!extUserInfo.added)
                {
                    usersToRemove.Add(extUserInfo);                     //user only needs to be removed via API if it wasn't added during this session of the dialog
                }
            }

            if (UserInfoHandler.GetInfo("Are you sure you want to remove user(s) " + userNames + " from project?", MessageBoxButtons.OKCancel)
                == System.Windows.Forms.DialogResult.Cancel)
            {
                return;
            }
            _usersToRemove.AddRange(usersToRemove);
            foreach (DataGridViewRow row in dgvUsers.SelectedRows)
            {
                dgvUsers.Rows.Remove(row);
            }
        }
 internal VCAdministrator GetVCAdministrator()
 {
     if (_vcAdministrator == null)
     {
         _vcAdministrator = new VCAdministrator();
     }
     return(_vcAdministrator);
 }
 internal void Init(VCAdministrator vcAdministrator, bool statusVisible, bool versionsVisible, bool commentsVisible)
 {
     _vcAdministrator          = vcAdministrator;
     _vcAPI                    = _vcAdministrator._vcAPI;
     colStatus.Visible         = statusVisible;
     colRemoteVersions.Visible = versionsVisible;
     colComment.Visible        = commentsVisible;
     Fill();
 }
Пример #4
0
        string _selectedVersion        = null; //Variable for storing the release selected by the user

        internal VCNewProject(VCAdministrator vcAdministrator)
        {
            _vcAdministrator = vcAdministrator;
            InitializeComponent();
            bool showVC = EnvironmentInfo.ShowComponent(EnvironmentInfo.Display.VC_show);

            cmbBaseProjects.Visible  = showVC;
            chkProjectOnVC.Visible   = showVC;
            cmbSelectVersion.Visible = showVC;
        }
Пример #5
0
        internal VCMultiUpDownload(VCAdministrator vcAdministrator, bool upload, bool selectAll = false, string nextAutoVersion = "")
        {
            _vcAdministrator = vcAdministrator;
            _upload          = upload;
            nextVersion      = nextAutoVersion;
            InitializeComponent();
            txtVersion.Text = nextAutoVersion;

            vcContent.Init(_vcAdministrator, true, !upload, false);
            btnUpDownload.Text = _upload ? "Upload" : "Download";
            this.Text          = _upload ? "Version Control - Upload Bundle" : "Version Control Download";
        }
Пример #6
0
        internal VCAdminContent(VCAdministrator vcAdministrator, bool hasAdminRight)
        {
            _vcAdministrator = vcAdministrator;

            InitializeComponent();

            if (!hasAdminRight)
            {
                btnUploadUnits.Enabled = btnRemoveUnits.Enabled = false;
            }

            FillUnitList();
        }
Пример #7
0
        static bool AssessDiskBaseProjectContent(string baseProjectPath, out ProjectContent projectContent)
        {
            projectContent = new ProjectContent(baseProjectPath);
            List <VersionControlUnitInfo> content = VCAdministrator.GetContent_LocalProject(baseProjectPath);

            foreach (VersionControlUnitInfo unit in content)
            {
                projectContent.projectUnits.Add(unit);
            }
            for (int i = 0; i < projectContent.projectUnits.Count; i++)
            {
                projectContent.selections.Add(true);
            }
            return(true);
        }
Пример #8
0
        internal VCDownloadLatestBundle(VCAdministrator vcAdministrator)
        {
            _vcAdministrator = vcAdministrator;
            InitializeComponent();

            if (!_vcAdministrator._vcAPI.GetProjectList(out _projectInfos, false))
            {
                UserInfoHandler.ShowError(_vcAdministrator._vcAPI.GetErrorMessage()); return;
            }

            List <VersionControlUnitInfo> units;

            foreach (ProjectNode projectInfo in _projectInfos)
            {
                if (projectInfo.Id == _vcAdministrator._vcAPI.vc_projectInfo.ProjectId)

                {
                    _projectNode     = projectInfo;
                    textProject.Text = projectInfo.Name; //select the current project
                    _projectId       = projectInfo.Id;


                    if (!_vcAdministrator._vcAPI.GetLatestReleaseUnitInfo(projectInfo.Id, out _releaseInfo))
                    {
                        UserInfoHandler.ShowError(_vcAdministrator._vcAPI.GetErrorMessage()); Cursor = Cursors.Default; return;
                    }

                    if (_releaseInfo != null)
                    {
                        _releaseId     = _releaseInfo.Id;
                        _bundleName    = _releaseInfo.Name;
                        txtBundle.Text = _releaseInfo.Name + " - " + _releaseInfo.Date.ToShortDateString();
                    }

                    AssessVCBaseProjectContent(out _projectContent);
                    units = _projectContent.projectUnits;

                    foreach (VersionControlUnitInfo unit in units)
                    {
                        ListViewItem item = listUnits.Items.Add(string.Format("{0} ({1})", unit.Name, VCContentControl.UnitTypeToString(unit.UnitType)));
                        item.Checked = true;
                        item.Tag     = unit;
                    }
                }
            }
        }
Пример #9
0
        void chkProjectOnVC_Click(object sender, EventArgs e)
        {
            chkBaseProjectChanged(chkProjectOnVC);

            if (cmbBaseProjects.Items.Count > 0)
            {
                return;                                  //combo with VC-project is already filled
            }
            //first click on VC-base-project: fill combo with available projects
            if (_vcAdministrator == null) //if not logged in, offer user to do so
            {
                VCAdministrator vcAdministrator = EM_AppContext.Instance.GetVCAdministrator();
                if (!vcAdministrator.HandleButtonLogInOutClicked())
                {
                    return;
                }
                _vcAdministrator = vcAdministrator;
            }

            List <ProjectNode> projects;

            if (!_vcAdministrator._vcAPI.GetProjectList(out projects, false))
            {
                UserInfoHandler.ShowError(_vcAdministrator._vcAPI.GetErrorMessage()); return;
            }
            cmbBaseProjects.Tag = projects;
            cmbBaseProjects.Items.Clear();
            int indexCurProject = -1;

            foreach (ProjectNode project in projects)
            {
                int index = cmbBaseProjects.Items.Add(project.Name);
                if (_vcAdministrator._vcAPI.IsVersionControlled() && project.Id == _vcAdministrator._vcAPI.vc_projectInfo.ProjectId)
                {
                    indexCurProject = index;
                }
            }
            if (indexCurProject != -1)
            {
                cmbBaseProjects.SelectedIndex = indexCurProject;                        //select currently loaded project (if there is one), as it's intuitive to use it as base
            }
        }
        internal VCDownloadRelease(VCAdministrator vcAdministrator)
        {
            _vcAdministrator = vcAdministrator;

            InitializeComponent();

            if (!_vcAdministrator._vcAPI.GetProjectList(out _projectInfos, false))
            {
                UserInfoHandler.ShowError(_vcAdministrator._vcAPI.GetErrorMessage()); return;
            }

            foreach (ProjectNode projectInfo in _projectInfos)
            {
                cmbProjects.Items.Add(projectInfo.Name);
                if (projectInfo.Id == _vcAdministrator._vcAPI.vc_projectInfo.ProjectId)
                {
                    cmbProjects.Text = projectInfo.Name; //select the current project
                }
            }

            UpdateReleases();
        }
 internal VCProxy()
 {
     _vcAdministrator = EM_AppContext.Instance.GetVCAdministrator();
     InitializeComponent();
 }
Пример #12
0
 public VCSettings()
 {
     _vcAdministrator = EM_AppContext.Instance.GetVCAdministrator();
     InitializeComponent();
 }
        bool CheckFieldValidity()
        {
            if (cmbReleases.SelectedIndex < 0)
            {
                UserInfoHandler.ShowInfo("Please select a release."); return(false);
            }

            _downloadActions.Clear();

            string undefUnits = string.Empty; int undefUnitsCount = 0, actionUnitsCount = 0, mergeCount = 0;

            foreach (var ui in _unitInfos)  // _downloadActions needs to be in the same order as _unitInfos ...
            {
                DataGridViewRow row = null; // ... therefore search for the correct row (users can change order sort-column-actions)
                foreach (DataGridViewRow r in dgvContent.Rows)
                {
                    if ((long)r.Tag == ui.UnitId)
                    {
                        row = r; break;
                    }
                }

                if (row.Cells[colGetReleaseVersion.Index].ReadOnly)
                {
                    _downloadActions.Add(DownloadAction.noAction);
                }
                else if (EM_Helpers.SaveConvertToBoolean(row.Cells[colKeepUIVersion.Index].Value))
                {
                    _downloadActions.Add(DownloadAction.noAction);
                }
                else if (EM_Helpers.SaveConvertToBoolean(row.Cells[colGetMergeSupport.Index].Value))
                {
                    _downloadActions.Add(DownloadAction.getMergeSupport); ++actionUnitsCount; ++mergeCount;
                }
                else if (EM_Helpers.SaveConvertToBoolean(row.Cells[colGetReleaseVersion.Index].Value))
                {
                    _downloadActions.Add(DownloadAction.getReleaseVersion); ++actionUnitsCount;
                }
                else
                {
                    VCAdministrator.AddUnitToMessage(ref undefUnits, row.Cells[colUnit.Index].Value.ToString()); ++undefUnitsCount;
                }
            }

            if (undefUnitsCount > 0)
            {
                UserInfoHandler.ShowInfo("Please make a choice for each unit, where user-interface-version and Release-version differ." +
                                         Environment.NewLine + string.Format("A choice is missing for unit{0} {1}.", undefUnitsCount > 1 ? "s" : string.Empty, undefUnits));
                return(false);
            }

            if (actionUnitsCount == 0)
            {
                UserInfoHandler.ShowInfo("Your choices do not require any download-action." + Environment.NewLine +
                                         "Please change your choices or close the dialog with Cancel.");
                return(false);
            }

            if (mergeCount > 0 && txtAlternativeFolder.Text != string.Empty)
            {
                UserInfoHandler.ShowInfo("Downloading to an alternative destination is not possible if 'Merge Support' is requested for any unit.");
                return(false);
            }

            if (txtAlternativeFolder.Text != string.Empty && !System.IO.Directory.Exists(txtAlternativeFolder.Text))
            {
                UserInfoHandler.ShowInfo("Please select an existing folder for the alternative destination."); return(false);
            }

            return(true);
        }
 internal VCLogin(VCAdministrator vcAdministrator)
 {
     _vcAdministrator = vcAdministrator;
     InitializeComponent();
 }