In Version 3.0, for applications containing nonvisual parts that
referenced the AbtNormalGraphic constant in
AbtConstants, the AbtConstants pool dictionary was
inherited from AbtPart. The class hierarchy was as
follows:
AbtPart
...
AbtCompositePart
...
AbtAppBldrPart
...
MyNonVisualPart
In Version 4.0, that constant moved from AbtConstants in AbtPart. The constant is now in the AbtCWAdditionsConstants dictionary. That dictionary is in the hierarchy of AbtAppBldrVisual but not AbtAppBldrNonVisual. So, if you have a nonvisual part that references this constant, when you try to load this class you will receive a compiler error in the Transcript similar to the following:
compiler error "undefined" --> AbtNormalGraphic Error: 357 Cannot complete the load because CustomerNonVisualPart>>#methodName (3/26/97 10:35:09 AM) does not compile. NOTE: If you reload after executing: EmImageBuilder cancelIfMethodsDoNotCompile: false methods which do not compile will be deleted.
You have several options at this point.
EmImageBuilder cancelIfMethodsDoNotCompile: false
Then, reload. After you have reloaded, you will need to add an entry in the class definition of your nonvisual class for the pool dictionary AbtCWAdditionsConstants. Once this is done, you will need to reload the class again or reload the methods that reference this constant.