protected virtual void OnRepComboChanged(object sender, System.EventArgs e) { if (repoContainer.Child != null) { repoContainer.Remove(repoContainer.Child); } if (repCombo.Active == -1) { return; } VersionControlSystem vcs = (VersionControlSystem)systems [repCombo.Active]; repo = vcs.CreateRepositoryInstance(); currentEditor = vcs.CreateRepositoryEditor(repo); repoContainer.Add(currentEditor.Widget); currentEditor.Widget.Show(); UrlBasedRepositoryEditor edit = currentEditor as UrlBasedRepositoryEditor; if (edit != null) { edit.PathChanged += OnPathChanged; } UpdateRepoDescription(); }
void UpdateCheckoutButton() { UrlBasedRepositoryEditor edit = currentEditor as UrlBasedRepositoryEditor; if (edit == null) { return; } buttonOk.Sensitive = !string.IsNullOrWhiteSpace(edit.RepositoryServer); }
protected override void OnDestroyed() { UrlBasedRepositoryEditor edit = currentEditor as UrlBasedRepositoryEditor; if (edit != null) { edit.UrlChanged -= OnEditUrlChanged; edit.PathChanged -= OnPathChanged; } base.OnDestroyed(); }
void AppendRelativePath() { UrlBasedRepositoryEditor edit = currentEditor as UrlBasedRepositoryEditor; if (edit == null) { return; } // RelativePath always is at least '/'. if (edit.RelativePath == "/") { entryFolder.Text = defaultPath; return; } entryFolder.Text = defaultPath + edit.RelativePath.Replace('/', System.IO.Path.DirectorySeparatorChar); }