PreviousWorkoutsPshBtn.setVisible(false);
PreviousWorkoutsFlexTable.setWidget(0, 2, PreviousWorkoutsPshBtn);
PreviousWorkouts.addChangeHandler(new ChangeHandler() {
@Override
public void onChange(ChangeEvent event) {
Workout workout = workouts.get(PreviousWorkouts
.getSelectedIndex());
FlexTable flexTable = new FlexTable();
flexTable.setWidth("300px");
WorkoutsListFlexTable.setWidget(0, 0, flexTable);
flexTable.setText(0, 0, "Items");
flexTable.setText(0, 1, "Duration");
flexTable.getCellFormatter().addStyleName(0, 0,
"calculatorlistheader");
flexTable.getCellFormatter().addStyleName(0, 1,
"calculatorlistheader");
for (int i = 0; i < workout.getExerciseItems().size(); i++) {
flexTable.setText(i + 1, 0, "- "
+ workout.getExerciseItems().get(i).getName());
flexTable.setText(i + 1, 1, workout.getDuration(i)
+ " mins");
}
}
});
PreviousWorkoutsPshBtn.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
if (PreviousWorkouts.getSelectedIndex() == -1
|| PreviousWorkouts.getValue(PreviousWorkouts
.getSelectedIndex()) == null
|| PreviousWorkouts
.getValue(PreviousWorkouts.getSelectedIndex())
.trim().equals(""))
return;
ExercisesFlexTable.setVisible(true);
Workout workout = workouts.get(PreviousWorkouts
.getSelectedIndex());
newWorkout = new Workout();
for (ExerciseItem exerciseItem : workout.getExerciseItems()) {
for (int i = 0; i < workout.getDuration(exerciseItem); i += 5)
newWorkout.addExerciseItem(exerciseItem);
int row = newWorkout.indexOfExerciseItem(exerciseItem) + 1;
int duration = newWorkout.getDuration(exerciseItem);
final ExerciseItem exerciseItem2 = exerciseItem;
ExercisesFlexTable.setText(row, 0, exerciseItem.getName());
ExercisesFlexTable.setText(row, 1, duration + " mins");
ExercisesFlexTable.setText(row, 2,
Double.toString((int) ((exerciseItem
.getBurnRate30() * duration) / 30.0)));
TotalCalsBurnedTextBox.setText(Double
.toString((int) newWorkout.totalCaloriesBurned()));
Button removeExercise = new Button("x");
removeExercise.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
int removedIndex = newWorkout
.indexOfExerciseItem(exerciseItem2);
newWorkout.removeExerciseItem(removedIndex);
ExercisesFlexTable.removeRow(removedIndex + 1);
TotalCalsBurnedTextBox.setText(Double
.toString((int) newWorkout
.totalCaloriesBurned()));
}
});
ExercisesFlexTable.setWidget(row, 3, removeExercise);
}
}
});
WorkoutsListFlexTable = new FlexTable();
WorkoutVerticalPanel.add(WorkoutsListFlexTable);
WorkoutsListFlexTable.setWidth("500px");
// WorkoutsListFlexTable.setStyleName("cw-FlexTable");
/* */
newMeal = new Meal(email);
newWorkout = new Workout(email);
startAsynchronous();
}