package boston.Bus.Map.tutorials;
import java.util.List;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.LayerDrawable;
import android.graphics.drawable.ShapeDrawable;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
import boston.Bus.Map.R;
import boston.Bus.Map.main.Main;
import com.google.common.collect.Lists;
public class IntroTutorial {
private static void addHighlight(View view) {
Drawable viewDrawable = view.getBackground();
if (!(viewDrawable instanceof LayerDrawable)) {
Drawable redBackground = view.getResources().getDrawable(R.drawable.red_background);
Drawable[] layers = new Drawable[]{redBackground, viewDrawable};
LayerDrawable layerDrawable = new LayerDrawable(layers);
view.setBackgroundDrawable(layerDrawable);
}
}
private static void removeHighlight(View view) {
Drawable viewDrawable = view.getBackground();
if (viewDrawable instanceof LayerDrawable) {
view.setBackgroundDrawable(((LayerDrawable) viewDrawable).getDrawable(1));
}
}
public static List<TutorialStep> populate() {
List<TutorialStep> steps = Lists.newArrayList();
steps.add(new TutorialStep() {
@Override
public int getTextResource() {
return R.string.tutorialStep1;
}
@Override
public void setup(Main parent) {
View button = parent.findViewById(R.id.drawerButton);
addHighlight(button);
}
@Override
public void teardown(Main parent) {
View button = parent.findViewById(R.id.drawerButton);
removeHighlight(button);
}
});
steps.add(new TutorialStep() {
@Override
public int getTextResource() {
return R.string.tutorialStep2;
}
@Override
public void setup(Main parent) {
}
@Override
public void teardown(Main parent) {
}
});
steps.add(new TutorialStep() {
@Override
public int getTextResource() {
return R.string.tutorialStep4;
}
@Override
public void setup(Main parent) {
View view = parent.findViewById(R.id.searchTextView);
addHighlight(view);
}
@Override
public void teardown(Main parent) {
View view = parent.findViewById(R.id.searchTextView);
removeHighlight(view);
}
});
steps.add(new TutorialStep() {
@Override
public int getTextResource() {
return R.string.tutorialStep5;
}
@Override
public void setup(Main parent) {
View view = parent.findViewById(R.id.predictionsOrLocations);
addHighlight(view);
}
@Override
public void teardown(Main parent) {
View view = parent.findViewById(R.id.predictionsOrLocations);
removeHighlight(view);
}
});
steps.add(new TutorialStep() {
@Override
public int getTextResource() {
return R.string.tutorialStep6;
}
@Override
public void setup(Main parent) {
}
@Override
public void teardown(Main parent) {
}
});
steps.add(new TutorialStep() {
@Override
public int getTextResource() {
return R.string.tutorialStep7;
}
@Override
public void setup(Main parent) {
}
@Override
public void teardown(Main parent) {
}
});
steps.add(new TutorialStep() {
@Override
public int getTextResource() {
return R.string.tutorialStep9;
}
@Override
public void setup(Main parent) {
}
@Override
public void teardown(Main parent) {
}
});
return steps;
}
}