skill calc: calculate xp on focus lost
This commit is contained in:
@@ -28,12 +28,15 @@ package net.runelite.client.plugins.skillcalculator;
|
|||||||
import java.awt.BorderLayout;
|
import java.awt.BorderLayout;
|
||||||
import java.awt.Color;
|
import java.awt.Color;
|
||||||
import java.awt.Dimension;
|
import java.awt.Dimension;
|
||||||
|
import java.awt.event.FocusAdapter;
|
||||||
|
import java.awt.event.FocusEvent;
|
||||||
import java.awt.event.MouseAdapter;
|
import java.awt.event.MouseAdapter;
|
||||||
import java.awt.event.MouseEvent;
|
import java.awt.event.MouseEvent;
|
||||||
import java.text.DecimalFormat;
|
import java.text.DecimalFormat;
|
||||||
import java.text.NumberFormat;
|
import java.text.NumberFormat;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.function.Consumer;
|
||||||
import javax.swing.BorderFactory;
|
import javax.swing.BorderFactory;
|
||||||
import javax.swing.Box;
|
import javax.swing.Box;
|
||||||
import javax.swing.JCheckBox;
|
import javax.swing.JCheckBox;
|
||||||
@@ -108,6 +111,12 @@ class SkillCalculator extends JPanel
|
|||||||
|
|
||||||
uiInput.getUiFieldTargetLevel().addActionListener(e -> onFieldTargetLevelUpdated());
|
uiInput.getUiFieldTargetLevel().addActionListener(e -> onFieldTargetLevelUpdated());
|
||||||
uiInput.getUiFieldTargetXP().addActionListener(e -> onFieldTargetXPUpdated());
|
uiInput.getUiFieldTargetXP().addActionListener(e -> onFieldTargetXPUpdated());
|
||||||
|
|
||||||
|
// Register focus listeners to calculate xp when exiting a text field
|
||||||
|
uiInput.getUiFieldCurrentLevel().addFocusListener(buildFocusAdapter(e -> onFieldCurrentLevelUpdated()));
|
||||||
|
uiInput.getUiFieldCurrentXP().addFocusListener(buildFocusAdapter(e -> onFieldCurrentXPUpdated()));
|
||||||
|
uiInput.getUiFieldTargetLevel().addFocusListener(buildFocusAdapter(e -> onFieldTargetLevelUpdated()));
|
||||||
|
uiInput.getUiFieldTargetXP().addFocusListener(buildFocusAdapter(e -> onFieldTargetXPUpdated()));
|
||||||
}
|
}
|
||||||
|
|
||||||
void openCalculator(CalculatorType calculatorType)
|
void openCalculator(CalculatorType calculatorType)
|
||||||
@@ -413,4 +422,15 @@ class SkillCalculator extends JPanel
|
|||||||
return slot.getAction().getName().toLowerCase().contains(text.toLowerCase());
|
return slot.getAction().getName().toLowerCase().contains(text.toLowerCase());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private FocusAdapter buildFocusAdapter(Consumer<FocusEvent> focusLostConsumer)
|
||||||
|
{
|
||||||
|
return new FocusAdapter()
|
||||||
|
{
|
||||||
|
@Override
|
||||||
|
public void focusLost(FocusEvent e)
|
||||||
|
{
|
||||||
|
focusLostConsumer.accept(e);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user