Hi All, I'm attaching new TBROWSE class. This new implementation though borrowed from previous Harbour version some methods code like NTOP(), NBOTTOM(), NLEFT(), NRIGHT(), BORDER(), MESSAGE() which recently Victor Szakats added. I also took some Victor's comments. Victor I didn't take colors related functions and method because my tests shows that they are not as close to CA-Cl*pper as they should. I tried to make this TBROWSE class maximally compatible with CA-Cl*pper but it's neither Harbour nor xHarbour compatible. Both old implementations have some serious differences to Clipper. The order of instance variables in new TBROWSE class is compatible with Clipper so it should be compatible also with the code which directly manipulates them using array indexes (not suggested but I've seen such code). The final code is a little bit smaller then current Harbour implementation and much smaller then xHarbour one though it address some things which were not implemented so far at all. There are still some minor differences to Clipper I know though most of them is intentional and probably you should not detect them in normal usage. Two minor things should be fixed yet and I'll do that in some spare time. Deeper tests shows that most of core TBROWSE code is written in C and it can be seen in used algorithms (f.e. some data which are calculated online and .prg implementation have to cause some serious speed overhead) and bugs like wrong casting and missing protection against buffer overflow. Because it's possible that many of you will want to create your own TBROWSE classes inheriting from the original one then I decided to keep whole code in .prg files without any C stuff. Anyhow if you look at some data structures and functions/methods then you will find that it will be much easier to write it in C. I've never used TBROWSE with Clipper so I cannot test it as well as I'd like. But I have some not mine Clipper's code which extensively uses TBROWSE and so far I was not able to port it to [x]Harbour due to some wrong visual effects. With this new class it works without any problems. If possible then I would like to ask all of you to make tests with this new class and your code. It will be the best if you have some original Clipper code not updated to work also with Harbour or xHarbour. If sth will be wrong then please inform me. If all will work correctly then I'll replace current code with the new one before release. Now I'm returning to whatsnew.txt ;-)
best regards, Przemek
tbrowse.prg.gz
Description: GNU Zip compressed data
_______________________________________________ Harbour mailing list [email protected] http://lists.harbour-project.org/mailman/listinfo/harbour
