CVS: check authorization inside doNext() before actually doNext() for default project CVS browsing to work

This commit is contained in:
irengrig
2010-01-26 17:56:26 +03:00
parent 92e354a07d
commit ff4225aa00
3 changed files with 24 additions and 3 deletions
@@ -41,6 +41,17 @@ public class CvsWizard extends AbstractWizard<WizardStep> {
return null;
}
@Override
protected void doNextAction() {
if ((myCurrentStep + 1) >= mySteps.size()) return;
final WizardStep nextStep = mySteps.get(myCurrentStep + 1);
if (! nextStep.preNextCheck()) {
return;
}
super.doNextAction();
}
public void updateStep() {
super.updateStep();
if (getNumberOfSteps() == 0) return;
@@ -77,18 +77,24 @@ public class SelectCvsElementStep extends WizardStep {
errors.set(Boolean.TRUE);
}
});
final boolean logged = performer.loginAll(
new ModalityContextImpl(ModalityState.stateForComponent(mySelectCVSConfigurationStep.getComponent()), false), false);
/*final boolean logged = performer.loginAll(
new ModalityContextImpl(ModalityState.stateForComponent(mySelectCVSConfigurationStep.getComponent()), false), false);*/
final boolean logged = performer.loginAll(new ModalityContextImpl(ModalityState.current(), false), false);
if ((! logged) || (! errors.isNull())) {
return false;
}
return true;
}
@Override
public boolean preNextCheck() {
CvsRootConfiguration selectedConfiguration = mySelectCVSConfigurationStep.getSelectedConfiguration();
return isLogged(selectedConfiguration);
}
public boolean setActive() {
CvsRootConfiguration selectedConfiguration =
mySelectCVSConfigurationStep.getSelectedConfiguration();
if (! isLogged(selectedConfiguration)) return false;
if (myCvsTree == null || !Comparing.equal(myConfiguration, selectedConfiguration)) {
myConfiguration = selectedConfiguration;
@@ -53,6 +53,10 @@ public abstract class WizardStep extends StepAdapter{
}
public boolean preNextCheck() {
return true;
}
public abstract boolean nextIsEnabled();
public abstract boolean setActive();
protected abstract JComponent createComponent();