Hey folks I was thinking of writing some substitutes/stubs for the windows .CPL files.
I migrated to using linux as a desktop fairly recently /used it for servers for a while, though/. Adapting to the linux equivalents of the programs I use, using wine for the rest etc. Whilst "reinventing" the software base,I had an annoyingly familiar *close encounter* with a program which /both windows and wine/ gives out a message basically saying in short: "For this program to run, the decimal should be '.' and the negative sign - '-'." That's cuz the locale /Bulgarian/ uses the ',' as the default decimal /both win and wine/.
The solutions, of course, are the 3 obvious ones - copy intl.cpl from a working windows, go "regedit" on the subject, open the regs with a text editor. Both 3 are not very appealing (notably the first one; the 2nd and 3rd are rather annoying /if you haven't tampered with the registry too much/, but I consider the first one a real no-go.). So I decided to write something to replace the functions of intl.cpl, and called it "winelocalesetup".
However, this got me thinking further - what if that program instead of popping up that message, decided to execute,say, "control.exe intl.cpl", to save me some of the trouble? And didn't issue any warning, but instead crashed in midst of working with it if the decimal wasn't changed (which would normally be the case. It's an accounting program, so, the decimal is indeed important...)
Anywho, I was thinking of creating a bunch of CPLs which mimic their windows counterparts in their names. However, the applet itself wouldn't do much - it would basically contain a somewhat appropriate icon/description, and, when started, launch the real executable, wine*something*.exe. That "wine*something*.exe" will for now basically show a message "Winesomething. Not implemented yet. If you see this message because of a running program, it means that the program is trying to...". With time, the .exe will be transformed into a useful substitute for the corresponding windows function. For example: intl.cpl - contains an icon (preferably a picture of the Earth; was thinking of going NASA on the subject), a description "Wine Locale Settings", and will execute winelocalesetup.exe. Winelocalesetup.exe would show a message: "Winelocalesetup. Not implemented yet. If you see this message, it means that a program is trying to call INTL.CPL, probably in order for you to modify the regional settings." That way, at least, it will be indicated to the user what's going on.
The idea for having both the cpls and the exes is, well, the cpls have to be called what they're called for compatibility reasons, and, once in place, need not be modified; the actual tool is contained within the .exe, which can be, well, a lot more flexible to develop than the CPL itself, and, can be replaced at any moment. And, well, although compatible with windows, it wouldn't be a pure repetition. (and no longer an empty control panel. Yay!)
BTW I have done quite some work on that winelocalesetup.exe, it reads the appropriate values from the registry, doesn't resemble the original intl.cpl's vision, and, well, is somewhat kinda useful (if only I could figure out how to WRITE the damn values, the keys keep turning back to their old values... oh well, guess I'll have to RTFM some more.)
So, any suggestions/comments/ideas?