public void initArchitecture() { model = VizController.getInstance().getVizModel().getTextModel(); vizConfig = VizController.getInstance().getVizConfig(); drawable = VizController.getInstance().getDrawable(); initRenderer(); // Init sizemodes for (SizeMode s : sizeModes) { s.init(); } // Model listening model.addChangeListener( new ChangeListener() { public void stateChanged(ChangeEvent e) { if (!nodeRenderer.getFont().equals(model.getNodeFont())) { nodeRenderer.setFont(model.getNodeFont()); } if (!edgeRenderer.getFont().equals(model.getEdgeFont())) { edgeRenderer.setFont(model.getEdgeFont()); } nodeRefresh = true; edgeRefresh = true; } }); // Model change VizController.getInstance() .getVizModel() .addPropertyChangeListener( new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { if (evt.getPropertyName().equals("init")) { TextManager.this.model = VizController.getInstance().getVizModel().getTextModel(); // Initialize columns if needed if (model.getNodeTextColumns() == null || model.getNodeTextColumns().length == 0) { AttributeController attributeController = Lookup.getDefault().lookup(AttributeController.class); if (attributeController != null && attributeController.getModel() != null) { AttributeModel attributeModel = attributeController.getModel(); AttributeColumn[] nodeCols = new AttributeColumn[] { attributeModel .getNodeTable() .getColumn(PropertiesColumn.NODE_LABEL.getIndex()) }; AttributeColumn[] edgeCols = new AttributeColumn[] { attributeModel .getEdgeTable() .getColumn(PropertiesColumn.EDGE_LABEL.getIndex()) }; model.setTextColumns(nodeCols, edgeCols); } } DynamicModel dynamicModel = dynamicController.getModel(); if (dynamicModel != null) { currentTimeInterval = dynamicModel.getVisibleInterval(); builder.setDefaultEstimator(dynamicModel.getEstimator()); builder.setNumberEstimator(dynamicModel.getNumberEstimator()); } else { currentTimeInterval = null; } } } }); // Settings antialised = vizConfig.isLabelAntialiased(); mipmap = vizConfig.isLabelMipMap(); fractionalMetrics = vizConfig.isLabelFractionalMetrics(); renderer3d = false; // Dynamic change dynamicController = Lookup.getDefault().lookup(DynamicController.class); dynamicController.addModelListener( new DynamicModelListener() { public void dynamicModelChanged(DynamicModelEvent event) { if (event.getEventType().equals(DynamicModelEvent.EventType.VISIBLE_INTERVAL)) { currentTimeInterval = (TimeInterval) event.getData(); } } }); }