That’s a great idea, Tim (and I remember you showing me that code). It might 
not be that much work for us to do for the subset of 4D Write commands that we 
use. Or maybe just create wrapper functions directly in the application that 
contain a switch telling whether to use 4D Write Pro or 4D Write Amateur. That 
could be done upfront and then use Global Find and Replace to swap the wrappers 
for the plugin calls. Still have to figure out the command cross-reference, 
however, which is the real kicker.

I’d love to stay in 32 bit mode that’s soon not going to be possible on the Mac 
side of things.

------------------------------------------------
Richard Wright
DataDomain
rwri...@datadomainsoftware.com
------------------------------------------------


> Date: Wed, 29 Aug 2018 14:38:46 -0500
> From: Tim Nevels <timnev...@mac.com>
> 
> On Aug 29, 2018, at 2:00 PM,Richard Wright wrote:
> 
>> Is there a cross reference of language commands between 4D Write and 4D 
>> Write Pro or do we have to all figure it out for ourselves? 
>> 
>> I’m mystified as to why wrappers for the old commands could not have been 
>> created so as to make the move to 4D Write Pro relatively painless. E-node 
>> did this very nicely when they created the new API for AreaList. All the old 
>> commands still work because they are internally mapped to the new ones. Why 
>> can’t this be done for 4D Write Pro? If it’s truly ready to go, scrap 4D 
>> Write but create a shell plugin that maps all the old commands to the new. 
>> With Mac Mojave being the last OS to support 32 applications it’s going to 
>> get serious pretty soon.
> 
> 
> But I have a crazy idea… 
> 
> What if someone created a 4D component that had the major 4D Write Plugin 
> commands with all the same parameters but as 4D component methods. And each 
> method accomplished the same results as the plugin command. Then you could 
> remove the 4D Write Plugin, install the component and run a syntax check to 
> expose every method and line using the plugin commands. Then you open each 
> method and force a retokenization to magically change each line to use the 
> component method instead of the plugin command. That gets you 90% of the way 
> there without a major code rewrite.
> 
> I did exactly this for 2 clients — different than these 2 clients — when I 
> upgraded them from v2004 to v11 and 4D dropped the 4D Open for 4D plugin. I 
> created a “4D Open for 4D SOAP” component that allowed me to not rewrite all 
> the 4D Open code. It was a lot of work, but in the end it was less than 
> rewriting all the existing code. And I could use it for 2 clients. The 2 
> shared the upgrade cost. 
> 
> When I get ready to do the SDI work for 1 client and need to rewrite all the 
> 4D Write code, I’m going to look into doing the same thing. Might be 
> possible. Might not be possible. But at least I’ve done it before so probably 
> a day or two of analysis and prototyping work will tell me if it can be done. 
> 
> Tim
> 
> *****************************************
> Tim Nevels
> Innovative Solutions
> 785-749-3444
> timnev...@mac.com
> *****************************************



**********************************************************************
4D Internet Users Group (4D iNUG)
Archive:  http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**********************************************************************

Reply via email to