twinbasic / twinbasic

272 stars 24 forks source link

IDE Variables window enhancement request - Dictionaries & collections #1068

Open mburns08109 opened 2 years ago

mburns08109 commented 2 years ago

Is your feature request related to a problem? Please describe. This is a problem only in so far as it would aid debugging code (or, more precisely, data)

Describe the solution you'd like Please enhance the IDE's Variables window to make it more scripting.Dictionary-aware and collection-aware.

More precisely, when debugging code that has scripting.dictionary or collection object variables, the Variables window DOES allow expansion of the object to view the children/members. But this is where it falls down a bit.

For dictionary object members, it would be GREATLY beneficial to display both the KEY and VALUE in the Variables Pane.

Similarly, for collections, the Key and Value should both be displayed (would be cool if an element with an object value displayed its default member+type and/or a [+] box to expands its member properties/public variables.).

At present (Beta 89), given the following code: ` Public Sub main() Dim oD As New Scripting.Dictionary Dim oC As New Collection

oD.Add "One", 1 oD.Add "two", 2 oD.Add "three", 3 oC.Add 1, "One" oC.Add 2, "two" oC.Add 3, "three"

Stop End Sub End Module ` ...the variables windows displays this: image

...which, especially for scripting.Dictionary contents (but really for both) is less than optimal.

Describe alternatives you've considered The story in VBA is really no better than what the tB IDE does now already. So, we can live with it and grumble when we have to write debug-only code in the immediate pane to do this on an ad-hoc basis like we do now in VBA

Additional context OK, I'm whining here a bit, but this really could/should be better handled so writing Dump the dictionary keys and values in the immediate pane code doesn't need to happen anymore.

Given the 4-digit numbers shown for the elements, I'm curious to see if there would be any issues with displaying 9,999+ elements...?

mburns08109 commented 2 years ago

OK - I checked and the 4-digit thing is not an issue - though I might suggest changing the default initial setting to 2 or 3 digits in the interest of screen real estate.