And, oh my god, guess what? I have a few suggestions! :-D
First off, you are going to want to make sure that the drive they enter is valid! There is a bunch of stuff that will pertain to this, but your main area of concern should be the dialog event. After your main dialog code, replace everything else with this:
on *:dialog:drive.properties:init:*: {
did -b $dname 4
}
on *:dialog:drive.properties:edit:3: {
did - $+ $iif($disk($did(3)),e,b) $dname 4
}
on *:dialog:drive.properties:sclick:*: {
if (($did = 4) && ($disk($did(drive.properties,3)))) {
did -r drive.properties 5
set %drive $did(drive.properties,3)
did -a drive.properties 5 Listing %drive Properties
did -a drive.properties 5 ------------------------
did -a drive.properties 5 Path: $disk($($+(%,drive),2)|0).path
did -a drive.properties 5 Type: $disk($($+(%,drive),2)|0).type
did -a drive.properties 5 Label: $disk($($+(%,drive),2)|0).label
did -a drive.properties 5 Size: $bytes($disk($($+(%,drive),2)|0).size,g) Gbs
did -a drive.properties 5 Free: $bytes($disk($($+(%,drive),2)|0).free,g) Gbs
}
}
The info button will be disabled until a valid drive is entered. I hope you can understand this. If not, let me know, I would be more than happy to outline the details. Good luck! :-D