CollatedDurationPanel.java 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package org.leumasjaffe.recipe.view;
  2. import javax.swing.JPanel;
  3. import javax.swing.JSeparator;
  4. import javax.swing.SwingConstants;
  5. import org.jdesktop.swingx.HorizontalLayout;
  6. import org.leumasjaffe.recipe.model.CollatedDuration;
  7. import lombok.AccessLevel;
  8. import lombok.experimental.FieldDefaults;
  9. @SuppressWarnings("serial")
  10. @FieldDefaults(level=AccessLevel.PRIVATE, makeFinal=true)
  11. public class CollatedDurationPanel extends JPanel {
  12. DurationPanel panelPrepTime;
  13. DurationPanel panelCookingTime;
  14. DurationPanel panelTotalTime;
  15. public CollatedDurationPanel() {
  16. setLayout(new HorizontalLayout(5));
  17. panelPrepTime = new DurationPanel("Prep");
  18. panelPrepTime.setEditable(false);
  19. add(panelPrepTime);
  20. add(new JSeparator(SwingConstants.VERTICAL));
  21. panelCookingTime = new DurationPanel("Cooking");
  22. panelCookingTime.setEditable(false);
  23. add(panelCookingTime);
  24. add(new JSeparator(SwingConstants.VERTICAL));
  25. panelTotalTime = new DurationPanel("Total");
  26. panelTotalTime.setEditable(false);
  27. add(panelTotalTime);
  28. }
  29. public CollatedDurationPanel(final CollatedDuration duration) {
  30. this();
  31. setModel(duration);
  32. }
  33. public void setModel(final CollatedDuration duration) {
  34. panelPrepTime.setModel(duration.getPrepTime().round(5));
  35. panelCookingTime.setModel(duration.getCookingTime().round(5));
  36. panelTotalTime.setModel(duration.getTotalTime().round(5));
  37. }
  38. }