|
|
@@ -0,0 +1,105 @@
|
|
|
+package org.leumasjaffe.charsheet.view.magic;
|
|
|
+
|
|
|
+import java.awt.GridBagConstraints;
|
|
|
+import java.awt.GridBagLayout;
|
|
|
+import java.awt.Insets;
|
|
|
+
|
|
|
+import javax.swing.JLabel;
|
|
|
+import javax.swing.JPanel;
|
|
|
+import javax.swing.JTextField;
|
|
|
+
|
|
|
+import org.leumasjaffe.charsheet.model.Ability;
|
|
|
+import org.leumasjaffe.charsheet.model.magic.DDSpellbook;
|
|
|
+import org.leumasjaffe.charsheet.model.observable.IntValue;
|
|
|
+import org.leumasjaffe.charsheet.util.StringHelper;
|
|
|
+
|
|
|
+import java.awt.Dimension;
|
|
|
+
|
|
|
+class ChooseSpellsPerDayHeader extends JPanel {
|
|
|
+ /**
|
|
|
+ *
|
|
|
+ */
|
|
|
+ private static final long serialVersionUID = 1L;
|
|
|
+ private JTextField textFieldKnown;
|
|
|
+
|
|
|
+ public ChooseSpellsPerDayHeader(int level, DDSpellbook model, IntValue ability) {
|
|
|
+ setPreferredSize(new Dimension(450, 20));
|
|
|
+ GridBagLayout gridBagLayout = new GridBagLayout();
|
|
|
+ gridBagLayout.columnWidths = new int[]{0, 30, 0, 30, 0, 30, 0, 0, 0, 0};
|
|
|
+ gridBagLayout.rowHeights = new int[]{0, 0};
|
|
|
+ gridBagLayout.columnWeights = new double[]{0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, Double.MIN_VALUE};
|
|
|
+ gridBagLayout.rowWeights = new double[]{0.0, Double.MIN_VALUE};
|
|
|
+ setLayout(gridBagLayout);
|
|
|
+
|
|
|
+ JLabel lblSpellLevel = new JLabel("Spell Level:");
|
|
|
+ GridBagConstraints gbc_lblSpellLevel = new GridBagConstraints();
|
|
|
+ gbc_lblSpellLevel.insets = new Insets(0, 0, 0, 5);
|
|
|
+ gbc_lblSpellLevel.anchor = GridBagConstraints.EAST;
|
|
|
+ gbc_lblSpellLevel.gridx = 0;
|
|
|
+ gbc_lblSpellLevel.gridy = 0;
|
|
|
+ add(lblSpellLevel, gbc_lblSpellLevel);
|
|
|
+
|
|
|
+ JTextField textFieldLevel = new JTextField(Integer.toString(level));
|
|
|
+ textFieldLevel.setEditable(false);
|
|
|
+ GridBagConstraints gbc_textFieldLevel = new GridBagConstraints();
|
|
|
+ gbc_textFieldLevel.fill = GridBagConstraints.HORIZONTAL;
|
|
|
+ gbc_textFieldLevel.insets = new Insets(0, 0, 0, 5);
|
|
|
+ gbc_textFieldLevel.gridx = 1;
|
|
|
+ gbc_textFieldLevel.gridy = 0;
|
|
|
+ add(textFieldLevel, gbc_textFieldLevel);
|
|
|
+ textFieldLevel.setColumns(10);
|
|
|
+
|
|
|
+ JLabel lblSaveDc = new JLabel("Save DC:");
|
|
|
+ GridBagConstraints gbc_lblSaveDc = new GridBagConstraints();
|
|
|
+ gbc_lblSaveDc.anchor = GridBagConstraints.EAST;
|
|
|
+ gbc_lblSaveDc.insets = new Insets(0, 0, 0, 5);
|
|
|
+ gbc_lblSaveDc.gridx = 2;
|
|
|
+ gbc_lblSaveDc.gridy = 0;
|
|
|
+ add(lblSaveDc, gbc_lblSaveDc);
|
|
|
+
|
|
|
+ JTextField textFieldSpellSave = new JTextField(Integer.toString(10 + level + Ability.modifier(ability.value())));
|
|
|
+ textFieldSpellSave.setEditable(false);
|
|
|
+ textFieldSpellSave.setColumns(10);
|
|
|
+ GridBagConstraints gbc_textFieldSpellSave = new GridBagConstraints();
|
|
|
+ gbc_textFieldSpellSave.fill = GridBagConstraints.HORIZONTAL;
|
|
|
+ gbc_textFieldSpellSave.insets = new Insets(0, 0, 0, 5);
|
|
|
+ gbc_textFieldSpellSave.gridx = 3;
|
|
|
+ gbc_textFieldSpellSave.gridy = 0;
|
|
|
+ add(textFieldSpellSave, gbc_textFieldSpellSave);
|
|
|
+
|
|
|
+ JLabel lblSpellsPerDay = new JLabel("Spells Per Day:");
|
|
|
+ GridBagConstraints gbc_lblSpellsPerDay = new GridBagConstraints();
|
|
|
+ gbc_lblSpellsPerDay.insets = new Insets(0, 0, 0, 5);
|
|
|
+ gbc_lblSpellsPerDay.gridx = 4;
|
|
|
+ gbc_lblSpellsPerDay.gridy = 0;
|
|
|
+ add(lblSpellsPerDay, gbc_lblSpellsPerDay);
|
|
|
+
|
|
|
+ JTextField textFieldOutOf = new JTextField(Integer.toString(model.numSpellsPerDayAtLevel(level)));
|
|
|
+ GridBagConstraints gbc_textFieldOutOf = new GridBagConstraints();
|
|
|
+ gbc_textFieldOutOf.insets = new Insets(0, 0, 0, 5);
|
|
|
+ gbc_textFieldOutOf.fill = GridBagConstraints.HORIZONTAL;
|
|
|
+ gbc_textFieldOutOf.gridx = 5;
|
|
|
+ gbc_textFieldOutOf.gridy = 0;
|
|
|
+ add(textFieldOutOf, gbc_textFieldOutOf);
|
|
|
+ textFieldOutOf.setEditable(false);
|
|
|
+ textFieldOutOf.setColumns(10);
|
|
|
+
|
|
|
+ JLabel lblSpellsKnown = new JLabel("Spells Known:");
|
|
|
+ GridBagConstraints gbc_lblSpellsKnown = new GridBagConstraints();
|
|
|
+ gbc_lblSpellsKnown.anchor = GridBagConstraints.EAST;
|
|
|
+ gbc_lblSpellsKnown.insets = new Insets(0, 0, 0, 5);
|
|
|
+ gbc_lblSpellsKnown.gridx = 6;
|
|
|
+ gbc_lblSpellsKnown.gridy = 0;
|
|
|
+ add(lblSpellsKnown, gbc_lblSpellsKnown);
|
|
|
+
|
|
|
+ textFieldKnown = new JTextField(StringHelper.toString(model.numSpellsKnownAtLevel(level), -1, "--"));
|
|
|
+ textFieldKnown.setEditable(false);
|
|
|
+ textFieldKnown.setColumns(10);
|
|
|
+ GridBagConstraints gbc_textFieldKnown = new GridBagConstraints();
|
|
|
+ gbc_textFieldKnown.insets = new Insets(0, 0, 0, 5);
|
|
|
+ gbc_textFieldKnown.fill = GridBagConstraints.HORIZONTAL;
|
|
|
+ gbc_textFieldKnown.gridx = 7;
|
|
|
+ gbc_textFieldKnown.gridy = 0;
|
|
|
+ add(textFieldKnown, gbc_textFieldKnown);
|
|
|
+ }
|
|
|
+}
|