quote:
Originally posted by Kian
I am aware of the standardbutton-issue 'OK', 'Cancel' etc... that would be a gap in such a ampersand collision-checker... and such issues could be solved by simply make a note about it like:
'You are about to apply an apersand that might be used by any OK, Cancel, Ignore etc-button. Do you want to skip this check or apply it on your own risk?'...
Believe me, you do not know what you're up against and you would soon see that it is far from as easy as that when you make such a program.
The example of the OK, Cancel and Apply button is only one example out of the extremely long list of exactly the same issues. In fact the whole thing consists of situations like that.
The situation where you could check one ini topic and safely say you have checked all possible combinations is very very rare and almost doesn't exist.
quote:
Originally posted by Kian
... that would be a workaround... the important thing is that the sections are similar to the visual image (the menus)... if so, details can be handled... (i think)
Sections will never ever be similar to the visual image. This is simply not doable and as good as impossible.
Things like the OK, Cancel, Apply buttons are not "just a minor one-of-a-kind detail"; It happens in almost every panel, window and feature thruout Plus!.
As said, you simply can not think in terms of "checking ini topics" when dealing with something like this. An ampersand collision checking program doesn't care what key is in what topic. The only thing that is important is to know what other keys a certain key relates to; hence why the index file of your program will contain a list of all the keys a certain key must be checked against and that for almost every key which exists.
A program which depends on ini topics or which is based upon 'rules' will always seriously fail doing its job properly.
In fact the program on its own would be dead simply and should/will contain only a few lines of code. It is the time, effort and precision you need to put into creating and updating the index file which makes this so hard to pull of.
-----
Such a ampersand collision check program also even depends on how Plus! itself is actually programmed!
Take the panel "Conversations > Chat Logging" for example. There you can choose between HTML or textfile logging, and depending on which choice you've made a different set of radio controls is shown.
Currently Plus! is programmed in such a way that the control which you don't see still are loaded on the panel. This means that the ampersand are also present.
You can see this if you press ALT+P. You will notice that the "Prefix lines" option is NOT selected/unselected. This is because there is actuall another same control (the one from the other HTML/Text option which is hidden at the moment). Thus this other 'hidden' control has that very same ampersand and Windows simply cycles between them instead of clicking the control.
To see the difference press ALT+D and notice that Windows does check/uncheck the option to save logfiles.
If Plus! was programmed so that such hidden controls are in fact not loaded, the ampersand selecting would behave as you might aspect.
Nevertheless, can this be considered an ampersand collision? Yes, as the controls aren't selected when you press the ampersand. No, as pressing the ampersand for the other (hidden) controls do not influence those controls.