in CasViewerEclipsePlugin/uimaj-ep-casviewer/src/main/java/org/apache/uima/casviewer/viewer/internal/GenericCasViewer.java [445:525]
protected void addPages()
{
// Create BaseCASObject from file or CAS
if ( createBaseCASObject () == null ) {
// Give up
return;
}
/*********************************************************************/
// Create a list of type's names from the Type System Tree
// (no built-in types and sorted by Short Name)
List<TypeDescription> types = baseCASObject.getTypeTree().getTypeListFromHierarchy(false, true);
types.remove(baseCASObject.getTypeTree().getRoot().getObject());
List<String> typeNames = new ArrayList<String>(types.size());
for (int i=0; i<types.size(); ++i) {
typeNames.add(types.get(i).getName());
}
// Create Type System's Style Object
// This TS style will be passed to each CASViewPage (pass to CASViewControl)
// It implies that ALL pages (sofas) will SHARE the same style.
typesystemStyle = TypeSystemStyle.createInstance(null);
// typesystemStyle.preSelectAllAnnotations(prefPreselectAll);
if (preSelectedTypeNames == null && prefPreselectAll) {
// "preSelectedTypeNames" is passed through GenericEditorInput
// So, give "preSelectedTypeNames" high priority over Preferences's prefPreselectAll
preSelectedTypeNames = typeNames;
}
// Get style file and apply, if any
File styleFile = null;
if (typesystemStyleFile != null) {
// TS style file in specified as input
styleFile = new File (typesystemStyleFile);
if (!styleFile.exists()) {
styleFile = null;
}
} else if (inputIsFile) {
// Try to get TS style file based on input file name
styleFile = getStyleFile (inputFileName, ".style.xml");
if (styleFile != null) {
typesystemStyleFile = styleFile.getAbsolutePath();
}
}
// Has imported styles ?
// if (styleFile != null) {
// Trace.err("Import style: " + styleFile.getName());
// // All styles from imported file will be used (instead of default styles)
// typesystemStyle.importAndApplyStyleMapFile(typeNames, styleFile);
// } else {
// // No Import. Assign "default" style to each type.
// typesystemStyle.assignStyleToTypes(typeNames);
// }
typesystemStyle.assignStyleToTypes(typeNames, styleFile);
/*********************************************************************/
createPagesFromCASObject (baseCASObject);
pageZeroText = getPageText(0);
// Select some types ?
if (preSelectedTypeNames != null) {
selectTypesByName(preSelectedTypeNames);
}
/*********************************************************************/
preferencePage = CorePreferencePage.createInstance(this, typesystemStyle, null);
try {
// Show/Hide Preference Page
if (!prefHidePreferencePage) {
preferencePageIndex = addPage(preferencePage);
}
} catch (PartInitException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// Display current type styles
preferencePage.setDefaultTypeStyles(typesystemStyle.getCurrentTypeStyleList());
}