rl-api, rl-client: add Client::getWidget(I)
This commit is contained in:
@@ -502,6 +502,16 @@ public interface Client extends GameEngine
|
||||
@Nullable
|
||||
Widget getWidget(int groupId, int childId);
|
||||
|
||||
/**
|
||||
* Gets a widget by it's packed ID.
|
||||
*
|
||||
* <p>
|
||||
* Note: Use {@link #getWidget(WidgetInfo)} or {@link #getWidget(int, int)} for
|
||||
* a more readable version of this method.
|
||||
*/
|
||||
@Nullable
|
||||
Widget getWidget(int packedID);
|
||||
|
||||
/**
|
||||
* Gets an array containing the x-axis canvas positions
|
||||
* of all widgets.
|
||||
|
||||
@@ -56,8 +56,6 @@ import net.runelite.api.widgets.JavaScriptCallback;
|
||||
import net.runelite.api.widgets.Widget;
|
||||
import net.runelite.api.widgets.WidgetID;
|
||||
import net.runelite.api.widgets.WidgetInfo;
|
||||
import static net.runelite.api.widgets.WidgetInfo.TO_CHILD;
|
||||
import static net.runelite.api.widgets.WidgetInfo.TO_GROUP;
|
||||
import net.runelite.client.callback.ClientThread;
|
||||
import net.runelite.client.config.ConfigManager;
|
||||
import net.runelite.client.config.Keybind;
|
||||
@@ -226,7 +224,7 @@ public class BankPlugin extends Plugin
|
||||
|
||||
final int compId = intStack[intStackSize - 2];
|
||||
final int buttonId = intStack[intStackSize - 1];
|
||||
Widget button = client.getWidget(TO_GROUP(compId), TO_CHILD(compId));
|
||||
Widget button = client.getWidget(compId);
|
||||
Widget buttonRect = button.getChild(0);
|
||||
|
||||
final Object[] onOpListener = buttonRect.getOnOpListener();
|
||||
|
||||
@@ -564,7 +564,7 @@ class WidgetInspector extends JFrame
|
||||
{
|
||||
if (type == MenuAction.SPELL_CAST_ON_WIDGET.getId())
|
||||
{
|
||||
Widget w = client.getWidget(WidgetInfo.TO_GROUP(param1), WidgetInfo.TO_CHILD(param1));
|
||||
Widget w = client.getWidget(param1);
|
||||
if (param0 != -1)
|
||||
{
|
||||
w = w.getChild(param0);
|
||||
@@ -574,7 +574,7 @@ class WidgetInspector extends JFrame
|
||||
}
|
||||
else if (type == MenuAction.ITEM_USE_ON_WIDGET.getId())
|
||||
{
|
||||
Widget w = client.getWidget(WidgetInfo.TO_GROUP(param1), WidgetInfo.TO_CHILD(param1));
|
||||
Widget w = client.getWidget(param1);
|
||||
return w.getWidgetItem(param0);
|
||||
}
|
||||
|
||||
|
||||
@@ -43,8 +43,6 @@ import net.runelite.api.events.GameTick;
|
||||
import net.runelite.api.events.ScriptPreFired;
|
||||
import net.runelite.api.events.StatChanged;
|
||||
import net.runelite.api.widgets.Widget;
|
||||
import static net.runelite.api.widgets.WidgetInfo.TO_CHILD;
|
||||
import static net.runelite.api.widgets.WidgetInfo.TO_GROUP;
|
||||
import net.runelite.client.config.ConfigManager;
|
||||
import net.runelite.client.eventbus.Subscribe;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
@@ -92,7 +90,7 @@ public class XpDropPlugin extends Plugin
|
||||
|
||||
private void processXpDrop(int widgetId)
|
||||
{
|
||||
final Widget xpdrop = client.getWidget(TO_GROUP(widgetId), TO_CHILD(widgetId));
|
||||
final Widget xpdrop = client.getWidget(widgetId);
|
||||
final Widget[] children = xpdrop.getChildren();
|
||||
// child 0 is the xpdrop text, everything else are sprite ids for skills
|
||||
final Widget text = children[0];
|
||||
|
||||
@@ -345,7 +345,7 @@ public class WikiPlugin extends Plugin
|
||||
|
||||
private Widget getWidget(int wid, int index)
|
||||
{
|
||||
Widget w = client.getWidget(WidgetInfo.TO_GROUP(wid), WidgetInfo.TO_CHILD(wid));
|
||||
Widget w = client.getWidget(wid);
|
||||
if (index != -1)
|
||||
{
|
||||
w = w.getChild(index);
|
||||
|
||||
Reference in New Issue
Block a user