I was going in circles for the last few days, trying to isolate why the InstantOrganize entries were not being properly validated following the processing. After hours of work, it led to an interaction problem in that the Instant Organize History List wiped out the settings on the Popup list. I don’t know whether or not I could fix it, but once I isolated it, I was able to come up with a solution. I could move the update of the Instant Organize numbers out from the end of the Processing, and just do them when hitting the drop-down button of the IO button, since that’s the only time the program really needs those numbers. (Is that true? Maybe they will be needed to see if any active IO history is available, so as to decide whether the IO button should be active or not. I’m not sure on this, and will have to run throught the code again and do some tests. Sigh: Isn’t anything ever simple?)
While struggling through this, at least I accomplished something along the way: It is possible that someone can modify a GEDCOM between the time the Instant Organize history is saved and the GEDCOM is loaded again. In that case, the IO entries may have been deleted in the GEDCOM or had their name changed. My IO checks that the name is the same. I had to do something to indicate if it isn’t. I had thought of striking out the name, but that capability wasn’t available on a history list. So I decided to put a small icon before the entry to indicate there was a change. First I made up a small “x” bitmap and used that. But it didn’t seem self-apparent as to what that might mean, since the entry still might be valid. So I spend another few minutes and made up a “??” bitmap. That’s better. I can add a hint and/or help function onto it later.