ISBoxer Controls UI
Since I don't have a G15 keyboard to make use of the lights for repeater on/off state. I decided to tweak Zanthor's old reapeater UI he included in his first IS Scripts compilation, so original credits to him for the UI, I just did a few tweaks to incorporate keymap toggle, and ISBoxer Config reload.
repeater.xml (Right click, save as repeater.xml to InnerSpace\Interface)
What does it do?
- Toggle Repeater
- Toggle Specified Keymaps
- Reload ISBoxer Settings
Toggle Repeater
Repeater Disabled, Keymap Active
Repeater Disabled, Keymap Disabled
In your repeater profile, if have the startup defaults "key repeat enabled" checked, you'll need to click the keys button once, then it will catch up and show the correct state. *Keys* should indicated repeating is enabled, Keys will indicate it is disabled. My repeater profile does not have this checked so the Keys button is already at the correct state.
Keymap Toggle
This is setup to toggle a keymap named Base. You can change the name of the keymap you want to toggle on line 37 of repeater.xml "relay all keymapper -togglemap Base" Just replace Base with whichever keymap you want the button to toggle.
Modifying keymapper.iss To Change the button text.
In order to get the Maps Text to indicate the current state of keymaps, we need to change the text on the button when the keymap is toggled.
Open InnerSpace\Scripts\keymapper.iss
Scroll down to line ~387 (or find "method ToggleKeyMap(string name)")
This is what you should find:
Code:
method ToggleKeyMap(string name)
{
if ${LoadedMaps.Contains["${name.Escape}"]}
This:UnloadKeyMap["${name.Escape}"]
else
This:LoadKeyMap["${name.Escape}"]
}
This is what you want to replace it with:
Code:
method ToggleKeyMap(string name)
{
if ${LoadedMaps.Contains["${name.Escape}"]}
{
UIElement[keymaptoggle@main@repeater]:SetText["Maps"]
This:UnloadKeyMap["${name.Escape}"]
}
else
{
This:LoadKeyMap["${name.Escape}"]
UIElement[keymaptoggle@main@repeater]:SetText["*Maps*"]
}
}
Save and reload your ISBoxer config (or launch your character set). Open the IS Console (Default ` key) and type "ui -reload repeater.xml". You should see the ISBoxer Controls UI show up as in this image (You may not have the WoWSkin loaded, but it's not required)
Reload
This simply sends a "relay all run isboxer -reload" to reload your ISBoxer Configuration just like the ISBoxer ingame GUI does. I threw this command so i wouldn't have to open the ISBoxer gui just to reload.
Something to remember, the next update of keymapper will overwrite these edits, so you'll need to re-edit the keymapper.iss whenever a new version is released.
Thanks to Lax and Red-One for answering all my questions in #isboxer.
Connect With Us