mapp Recipe Framework - 配方系统设计

<< 点击显示目录 >>

主页  mapp Framework介绍 > mapp Recipe >

mapp Recipe Framework - 配方系统设计

在这个配方系统中,有两个配方类别。"产品 "和 "机器"。

每个类别都被保存在自己的配方文件中。

每个类别都有一个结构变量被注册。

oParameters_type保存产品数据。

oMachineSettings_type保存机器数据。

每个数据类型的三个变量被用来完成预览功能和在不正式加载配方的情况下编辑配方的能力(见下文)。例如,让我们关注一下参数结构。

o变量Parameters是实际的变量结构,它持有活动配方,应该在应用程序中使用。这个变量没有直接注册到配方中。

o变量ParametersPreview是唯一被注册到配方的产品类别的变量。这允许你加载和预览配方,而不在应用程序中实际激活它们。如果一个配方应该被加载到应用程序中,那么Parameters变量结构就会被框架设置为等于ParametersPreview结构。

o变量ParametersEdit被用作一个中间结构,以便能够在不加载配方的情况下编辑它。它还充当了注册变量之间的缓冲区,这样,如果需要的话,你可以在编辑时轻松地放弃修改。

 

rECIPE_VARS

o用于显示“活动”和“预览”值的自定义小组件还包含值比较功能。该小组件将所选配方预览值与活动配方值进行比较,如果它们不同,则更改预览值的背景。此背景更改是通过使用复合构件外观下修改后的样式设置更改标准构件的样式来实现的。

NewItem45

 

 

请注意,配方框架在初始化程序中有一些 While 循环,而其他框架则没有。其原因是该框架在初始化程序中加载默认的配方。因此,在成功触发加载命令之前,支持功能块必须处于活动状态。默认配方在初始化程序中加载,而不是在循环程序中加载,以避免整个框架需要一个全局变量来指示配方何时完成加载。