Cesar,
>how did you manage to
intercept WM_PAINT in VFP6 ?
>I presume that you've created an external
library, FLL or DLL
>bringing a function for that ?
Yes. I had created a generic UTILS.DLL that was a catch-all for all additions. The DLL would intercept those events and allow me to draw directly onto the VFP form.
>What exactly did your Extended Grid class do ?
>Any screenshots?
It was for a project that I haven't worked on since late 2005. The grid allowed columns in a narrow grid. Suppose you have a two-column grid that is a 9-digit general ledger account code, and an amount. Rather than take up lots of vertical screen space, I created the GridX class to allow a multi-column form. The data begins in the upper-left-most position, drawing down for its height, and then once reaching its maximum, displays an arrow which goes up to the top of another column which appears to its right. That column then proceeds down until it reaches its height, and then this repeats until the width is reached. Using the up/down arrows scrolls down each column to the top of the next, and repeats. When it reaches the left-most or right-most positions, the data begins to scroll with each item going up/down by migrating to the column immediate over from it.
I do not have a screenshot, but I will be implementing this feature in the GridX class in Visual FreePro. So, you will be able to see it in use again in several months. :-)
In all the code I write I try to be as far backward compatible as possible. There are users out there with VFP3 still today. I do not want to force them to upgrade to some later version for some great expense when I can write code that allows their prior / existing investment to do the work.
That code I wrote for GridX was in VFP6, but would also work in VFP3 or VFP5.
To me, offering this full backward support is of tremendous value, which is my VFrP will support text-based DOS-like support for old code written for FoxBASE+ for DOS, FoxPro for DOS, and then limited GUI support for FoxPro for Windows, etc.
People should not be forced to pay out more money to have more features, especially when in items such as software, the advancement of features are created one time and can be replicated to everybody on the planet for essentially free. No new hardware would be required unless the capabilities of the newer technologies force it. But if one of your considerations is to maintain full backward compatibility, you will go as far as you can in that software for that design, and then branch off for a new product for the newer technologies.
As for technologies existing in 2010 and later ... there are almost no limits any longer. A person can obtain a six+ CPU core machine with 16GB of memory for what a single-core 500MHz machine cost a decade ago. And it will only get cheaper over time.