I've had a few ideas for some tracking window modifications. I am just starting to dabble in UI modding now, so I'm not sure how much (if any) of what I want to do is even possible. I've played with it a little bit with limited success. Maybe some of you experts can point me in the right direction or flat out tell me that what I want to do isn't possible.
First a description of 3 basic changes/additions I'd like to make and then I'll try and describe what I have tried so far.
- I'd like to have a button on the window that you press and it does a /who of the selected name in the tracking window.
- I'd like to have a checkbox next to the filter text to easily enable/disable filtering based on that text.
- I'd like to change the dropdown filter (All, NPC only, PC only, Group only) into a radio-button style control.
What I've tried so far for the "Who button" is simply to add a button with an OnPress event try try and do a /who of the name. The problem I am running into is that I can't seem to get the name. The tracking window uses a Table and I can get the index of the selected row, but I can't seem to get the text of that row. Is there someway of using that index to get the proper text from the DataSource or DataSourceContainer? I haven't been able to find any info on what sort of properties/methods are supported on those.
For the radio button mod, I started out by simply trying to create a simple button to change the dropdown selection. That seems to work, but the filter doesn't seem to get applied to the tracking table. So if the dropdown is at PC only, when I click my test button to switch it to NPC only it changes the dropdown, but the window is still filtering PC only. Here's what the code for that button looks like currently.
Code:
<Button LocalText="Test" Location="120,337" Name="TestButton" PackLocation="left,bottom" PackLocationProp="-106/0001,-053/0001" PackSize="fixed,fixed" PackSizeProp="0002/0003,0002/0003" ScrollExtent="100,32" Size="100,32" Style="/CommonElements.PushButton.data.style" OnPress="parent.FilterDropdown.SelectedItemIndex=1
parent.FilterDropdown.OnSelect">Test</Button>
I haven't tried anything yet with the enable/disable checkbox, but I'm thinking that on a disable I can possibly store the text currently there into another property then clear the text, and then with the enable restore that text. Based on my attempts to get the dropdown mod working I'm guessing I'll run into the same problem of that not refreshing the actual tracking list, though. Is there some sort of function I need to call to update that data to re-apply the filters?
Anyway, any thoughts or ideas would be helpful even if it's to tell me that I'm overlooking something stupidly simple, or that what I want can just cannot be done. Thanks!