Просмотр исходного кода

Switch from the actual servings spinner to the recipe scale spinner when going read only.

Sam Jaffe 5 лет назад
Родитель
Сommit
dbcbf958b5

+ 6 - 1
src/main/lombok/org/leumasjaffe/recipe/view/summary/SummaryPanel.java

@@ -39,6 +39,7 @@ public class SummaryPanel extends JPanel {
 	JTextField txtTitle;
 	JTextArea txaDescription;
 	JSpinner spnServings;
+	JSpinner spnServingsToMake;
 	
 	public SummaryPanel() {
 		controller = new ReplaceChildrenAction<>(RecipeCard::getElements, element -> {
@@ -108,11 +109,13 @@ public class SummaryPanel extends JPanel {
 		panelServings.add(lblServes, gbc_lblServes);
 		
 		spnServings = new JSpinner(new SpinnerNumberModel(1, 1, Integer.MAX_VALUE, 1));
+		spnServingsToMake = new JSpinner(new SpinnerNumberModel(1, 1, Integer.MAX_VALUE, 1));
 		GridBagConstraints gbc_spnServings = new GridBagConstraints();
 		gbc_spnServings.fill = GridBagConstraints.HORIZONTAL;
 		gbc_spnServings.gridx = 1;
 		gbc_spnServings.gridy = 0;
 		panelServings.add(spnServings, gbc_spnServings);
+		panelServings.add(spnServingsToMake, gbc_spnServings);
 		
 		JPanel panelIngredients = new JPanel();
 		GridBagConstraints gbc_panelIngredients = new GridBagConstraints();
@@ -191,7 +194,9 @@ public class SummaryPanel extends JPanel {
 		super.setEnabled(enabled);
 		txtTitle.setEditable(enabled);
 		txaDescription.setEditable(enabled);
-		spnServings.setEnabled(enabled);
+		spnServings.setVisible(enabled);
+		spnServingsToMake.setValue(spnServings.getValue());
+		spnServingsToMake.setVisible(!enabled);
 	}
 	
 	@Override