>Hi Paul
>
>BTW, I posted your comments on the VMP discussion board and Drew replied thusly...
>
>>>When I started using VFP 7.0/Intellisense, I started using the default capitalization from Intellisense. So code that I've written or modified, starting about a year ago, is capitalized differently from the rest of VMP framework code. That's just a capitalization difference, not a style difference.<<
>
I really wish you hadn't - it's not my intention to turn this into more than it is; my opinion. But I happen to think the capitalization thing IS a style difference. But anyway, here is some code I pulled out of VMP4 (which was before VFP 7), at random:
From: frmDEGridNav.Init()
lparameters tuInitialValue, tcFilter, tcAddOnTheFlyAlias
IF sys(16,0) = "PROCEDURE CLASSBROWSER"
return .t.
ENDIF
IF !frmDataEntry::Init(tuInitialValue,tcFilter,tcAddOnTheFlyAlias)
return .f.
ENDIF
The case changing thing happens a lot. I'm sure it's consistent to some sort of standard, but I just don't see it. So it's possible "consistent" was the wrong word ;-) Odd might be a better description. One thing that isn't consistent is the headers in each method. Sometimes they are there, sometimes not.
Another chunk of code that I found a bit unwieldy is the UpdateBuffers() method from frmData. It's fairly well commented, but it's pretty darn long. I'd say confusing.
These aren't the only reasons for my choice of frameworks, and they could easily be seen as more nit-picky things than anything (but I still think they are important). The biggest reason(s) for me choosing MM over VMP (or any other framework) had to do with it's n-Tier architecture (which was only recently added to VMP and wasn't even being considered when I purchased MM's), user interface (look and feel issues) based on the default controls & forms shipped with the framework, and the manual (which was very important to me).