this.moduleTypeInfo = perspective.getWorkingModuleTypeInfo();
// Create and initialize components
this.calEditor = new AdvancedCALEditor(moduleTypeInfo, perspective.getWorkspace());
this.codeSyntaxListener = new GemCodeSyntaxListener(perspective);
try {
this.calEditor.addCALSyntaxStyleListener(codeSyntaxListener);
} catch (TooManyListenersException e) {
// The only effect this has on the editor is that custom text coloring does not work;
// however, the system will be in an erroneous state.