
For now it still has some rough edges. For example, in classes that contain events, it generates add_Event(EventHandler) or remove_Event(EventHandler) methods for each of them. The same goes for properties, depending on whether they have Get and/or set – so, for example, get_Property() or set_Property(string). Another problem is that I didn’t manage to get any other methods or any other class members that aren’t public.
What’s strange is that a method like Assembly.GetTypes() retrieves all members (including private ones) completely automatically, while all the other methods won’t return the private members even by accident :/. Private ones should work, but protected and internal should not, see https://learn.microsoft.com/cs-cz/dotnet/api/system.type.getfields?view=net-10.0&redirectedfrom=MSDN#System_Type_GetFields_System_Reflection_BindingFlags_ . I conveniently found the icons on my disk – I had already downloaded the whole image set from VS at some point, and the ones I needed started with VSObject_, for example VSObject_Delegate .. and on top of that, all of these images came in variants for the different modifiers (public, private, internal, protected).
Another unfortunate choice is using ListView instead of DataGridView or something similar, because it doesn’t let you select the whole row, only the first column, and even in that first column it only highlights a 50 px area next to the image. There is surely some way to configure that, but right now I couldn’t care less. On top of that, the ListView is visually ugly – too bad it isn’t the one used in, for example, Windows Explorer.
And now I’m not going to do anything else on SVS; instead I’m going to write a letter to my parents and then my own backup program for my source files. It really annoys me how I keep losing source files. It will be an incremental backup and it will work simply: it will back up all files except the bin and obj folders. During a backup, if files exist in the backup but not in the project on disk, I’ll delete them from the backup.
But if an entire project is missing, I’ll ask whether I really deleted it myself, and if so, I’ll delete it from the backup too / move it to the graveyard; if not, it will instead be restored from the backup to the disk. Backups will go to a USB flash drive and to an SD card that I’ll keep in my laptop all the time, just to be safe – in case my disk fails and maybe the USB flash drive too, I’ll still have it on the SD card.
Of course, this will run at a regular interval, say every 3 hours, and the application will sit in the tray, constantly running in the background. There’s no way I’m not going to stop this loss of projects! It really p*sses me off!!!