jgoemat Master Cheater
Reputation: 22
Joined: 25 Sep 2011 Posts: 260
|
Posted: Sat Jul 21, 2018 6:05 am Post subject: Working on a better mono inspector, UX tips anyone? |
|
|
Did a proof of concept and the performance is great. The existing 'find' of the mono inspector actually steps through and expands each tree node which I think causes a ton of overhead, and it leaves all those nodes open making it hard to navigate.
I have a form working on Wasteland 2, it puts a 'Search' menu item under the 'Mono' menu (thanks FreeER for sample code on github for that). First time you click it you pick the image (assembly) from a list, after that and every other time it opens a search form with three ListView controls and an edit box. As you type, it filters all three groups. Each filter round takes at most 100ms on my computer, and that's with 9,670 classes, 40,044 fields, and 75,575 methods to look through. Just found OwnerData and OnData on the ListView so it calls you for what to display for only the visible rows, cool...
I think I like having one 'search' box and showing all three items together, but is there some control to make them all equal size, or could I use two splitters? I haven't really used splitters before and don't know how they work.
I was thinking you could select classes/fields/methods and 'hide' them, Wasteland2 has about 90% useless classes, i.e. 5636/9670 have 'c__Iterator' in the name. Most of the others look like little logic classes for individual quests or areas like 'AZ1_EastField_AZ5_GaryWolf_Logic'. It would be easy to filter on that and hide those to make the investigation simpler, and I have classes to save those settings in a table file or external text file easily...
I used a PageControl because I'm thinking I'd have another page to let you manage the 'hidden' items so you could unhide them if you made a mistake or wanted to reset and look at different things later.
Another option would be to have separate pages for each 'classes', 'fields', and 'methods'. The extra room could be used so when you click on one it would display the nice class detail, maybe columns with fields and methods. I think I would still want to be able to double-click something and have a separate window open for the class though.
Another thing I was thinking was to let you comment on things. In the class window for instance you could have a separate page/tab for notes for each class. One of the pages/tabs on the main search form could just display those classes/fields/methods you have made notes on too...
And from the class window there could be a page/tab that will show you where the class is used, i.e. what fields on other classes are of that type and what methods on other classes take that class as a parameter or return it.
Description: |
|
Filesize: |
67.9 KB |
Viewed: |
1870 Time(s) |

|
|
|