Refactor/rewrite CloneSourcePage to universal RepositorySelectionPage
commit8bd78b65305bf6b635446ff66e72c46208b55db6
authorMarek Zawirski <marek.zawirski@gmail.com>
Sun, 17 Aug 2008 18:35:55 +0000 (17 20:35 +0200)
committerMarek Zawirski <marek.zawirski@gmail.com>
Sun, 17 Aug 2008 19:15:41 +0000 (17 21:15 +0200)
treee106a5ebbb6ace3398d69e6213149aae1929d7f0
parent7aeb091fe5f0e66a53f475eb4c3e6dcb3ced75e1
Refactor/rewrite CloneSourcePage to universal RepositorySelectionPage

CloneSourcePage is refactored to serve as generic wizard page for
repository selection. Selection can be performed now as custom URI or
(optionally - configurable) from preconfigured remote repositories. That
allows us to this wizard page for selection of both source and destination
repository in wizards.

As there was need for code rewrite in few places, some things get fixed or
improved by the way:
- Controls are disabled/enabled recursively, so user get better feedback
  what he/she can type.
- URI panel behaved strange when bad URI was typed, now it's probably more
  obvious what's going on.
- Distinction is introduced between internal URI/RemoteConfig selection
  (possibly invalid) and exposed one - for other pages. Hence, clients of
  this class don't have to handle internal validation issues.
- isPageComplete() logic is moved to checkPage(), as it seems to be
  strange (and hard to follow?) pattern to mix setPageComplete() and
  custom isPageComplete().
- possibly minor forgotten issues.

Signed-off-by: Marek Zawirski <marek.zawirski@gmail.com>
org.spearce.egit.ui/src/org/spearce/egit/ui/UIText.java
org.spearce.egit.ui/src/org/spearce/egit/ui/internal/clone/CloneDestinationPage.java
org.spearce.egit.ui/src/org/spearce/egit/ui/internal/clone/CloneSourcePage.java [deleted file]
org.spearce.egit.ui/src/org/spearce/egit/ui/internal/clone/GitCloneWizard.java
org.spearce.egit.ui/src/org/spearce/egit/ui/internal/clone/SourceBranchPage.java
org.spearce.egit.ui/src/org/spearce/egit/ui/internal/clone/URIishChangeListener.java [deleted file]
org.spearce.egit.ui/src/org/spearce/egit/ui/internal/components/RepositorySelectionListener.java [new file with mode: 0644]
org.spearce.egit.ui/src/org/spearce/egit/ui/internal/components/RepositorySelectionPage.java [new file with mode: 0644]
org.spearce.egit.ui/src/org/spearce/egit/ui/uitext.properties