SelectCampaignScenarioPresenter.java :  » Java-3D » heavylead » com » heavylead » presenters » Java Open Source

Java Open Source » Java 3D » heavylead 
heavylead » com » heavylead » presenters » SelectCampaignScenarioPresenter.java
package com.heavylead.presenters;

import com.google.inject.Inject;
import com.heavylead.models.interfaces.ICampaign;
import com.heavylead.models.interfaces.ISelectCampaignModel;
import com.heavylead.views.interfaces.INavigator;
import com.heavylead.views.interfaces.ISelectCampaignScenarioView;
import com.heavylead.views.interfaces.ISelectCampaignScenarioViewListener;

/**
 * The Class SelectCampaignScenarioPresenter.
 */
public class SelectCampaignScenarioPresenter
    extends AbstractPresenter
    implements ISelectCampaignScenarioViewListener {
    
    /** The _view. */
    private ISelectCampaignScenarioView _view;
    
    /** The _model. */
    private ISelectCampaignModel _model;
    
    /** The _navigator. */
    private INavigator _navigator;
    
    /**
     * Instantiates a new select campaign scenario presenter.
     * 
     * @param view the view
     * @param model the model
     * @param navigator the navigator
     */
    @Inject
    SelectCampaignScenarioPresenter(final ISelectCampaignScenarioView view,
            final ISelectCampaignModel model,
            final INavigator navigator) {
        super(view);

        _model = model;

        _view = view;
        _view.setViewListener(this);
        
        _navigator = navigator;
    }

    /**
     * On show.
     * 
     * @see com.heavylead.AbstractPresenter#onShow()
     */
    @Override
    public final void onShow() {  
        ICampaign selectedCampaign = _model.getSelectedCampaign();
//        ICampaignStage[] stages = selectedCampaign.getOrderedStages();
//
        
        // TODO: set allegiance names and colors to top and bottom victory banners
        // TODO: set allegiance symbol to top and bottom victory buttons
        // TODO: display scenarios, in stages, with proper connections
        // TODO:   each scenario should be enabled or not, depending on current scenario and allegiance of playing selecting
        // TODO:   each scenario should be colored according to winner
        
        
        
//        _view.setUpperVictoryBanner(stages[0].getAllegiances().get(0));
//        _view.setLowerVictoryBanner(stages[stages.length - 1].getAllegiances().get(0));
//
//        List<List<CampaignScenarioAdapter>> scenarioAdapters = new ArrayList<List<CampaignScenarioAdapter>>();
//        List<List<CampaignScenarioConnector>> scenarioConnectors = new ArrayList<List<CampaignScenarioConnector>>();
//
//        for (ICampaignStage stage : stages) {
//            List<String> stageAllegiances = stage.getAllegiances();
//            List<CampaignScenarioAdapter> stageAdapter = new ArrayList<CampaignScenarioAdapter>();
//            List<CampaignScenarioConnector> stageConnector = new ArrayList<CampaignScenarioConnector>();
//
//            for (ICampaignScenario scenario : stage.getScenarios()) {
//                boolean isEnabled = false;
//
//                //                // The scenario should be enabled if:
//                //                //  The current scenario is not in progress
//                //                if (!selectedCampaign.getCurrentScenario().getInProgress()) {
//                //                    // AND the current user is the same allegiance as the complete
//                //                    // TODO: for now, we're assuming the player will be starting
//                //                    //  the server, and can pick any allegiance they want at that point
//                //
//                //                    // AND this scenario is in the list of "next scenarios" for the allegiance for the current scenario
//                //                    String winner = selectedCampaign.getCurrentScenario().getWinner();
//                //                    List<ICampaignScenario> nextScenarios = selectedCampaign.getCurrentScenario().getNextScenarios(winner);
//                //                    if (nextScenarios.contains(scenario)) {
//                //                        isEnabled = true;
//                //                    }
//                //                }
//
//                // TODO: the scenario should be enabled if it is in the list of campaign.getNextScenarios?
//
//                stageAdapter.add(new CampaignScenarioAdapter(isEnabled, scenario.getSelected(), scenario.getBackgroundColors(), scenario.getTag()));
//
//                for (String allegiance : stageAllegiances) {
//                    List<ICampaignScenario> nextScenarios = scenario.getNextScenarios(allegiance);
//                    for (ICampaignScenario nextScenario : nextScenarios) {
//                        stageConnector.add(new CampaignScenarioConnector(scenario.getTag(), nextScenario.getTag()));
//                    }
//                }
//            }
//
//            scenarioAdapters.add(stageAdapter);
//            scenarioConnectors.add(stageConnector);
//        }
//
//        _view.displayCampaignScenarios(scenarioAdapters, scenarioConnectors);
    }

    /**
     * @see com.heavylead.views.interfaces.ISelectCampaignScenarioViewListener#oKPressed()
     */
    @Override
    public void oKPressed() {
        // TODO Auto-generated method stub        
    }
    
    /**
     * @see com.heavylead.views.interfaces.ISelectCampaignScenarioViewListener#cancelPressed()
     */
    @Override
    public final void cancelPressed() {
        _navigator.hideSelectCampaignScenario();
        _navigator.displaySelectCampaign();
    }


}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.