001 package de.deepamehta.plugins.d3renderer; 002 003 import de.deepamehta.core.model.CompositeValueModel; 004 import de.deepamehta.core.osgi.PluginActivator; 005 import de.deepamehta.core.service.PluginService; 006 import de.deepamehta.core.service.annotation.ConsumesService; 007 008 import de.deepamehta.plugins.topicmaps.TopicmapRenderer; 009 import de.deepamehta.plugins.topicmaps.service.TopicmapsService; 010 011 012 013 public class D3RendererPlugin extends PluginActivator implements TopicmapRenderer { 014 015 // *** Hook Implementations *** 016 017 @Override 018 @ConsumesService("de.deepamehta.plugins.topicmaps.service.TopicmapsService") 019 public void serviceArrived(PluginService service) { 020 ((TopicmapsService) service).registerTopicmapRenderer(this); 021 } 022 023 // *** TopicmapRenderer Implementation *** 024 025 @Override 026 public String getUri() { 027 return "dm4.d3js_renderer"; 028 } 029 030 // ### TODO: copy in DefaultTopicmapRenderer.java 031 @Override 032 public CompositeValueModel initialTopicmapState() { 033 return new CompositeValueModel() 034 .put("dm4.topicmaps.translation", new CompositeValueModel() 035 .put("dm4.topicmaps.translation_x", 0) 036 .put("dm4.topicmaps.translation_y", 0) 037 ); 038 } 039 }