// http://www.graphviz.org/Gallery/directed/cluster.html
        // returns written nodes
        public int Write(IGraph graph, IGraphPicking picking, IModuleRepository modules)
        {
            Contract.RequiresNotNull(graph, "graph");
            Contract.RequiresNotNull(picking, "picking");
            Contract.RequiresNotNull(modules, "modules");

            return(new WriteAction(this, graph, picking, modules).Execute());
        }
            public WriteAction(DotWriter owner, IGraph graph, IGraphPicking picking, IModuleRepository modules)
            {
                myOwner   = owner;
                myGraph   = graph;
                myPicking = picking;

                myCaptions   = modules.GetPropertySetFor <Caption>();
                myNodeStyles = modules.GetPropertySetFor <NodeStyle>();
                myEdgeStyles = modules.GetPropertySetFor <EdgeStyle>();
            }
        public PickingCache(IGraphPresentation presentation, IGraphPicking realPicking)
        {
            Contract.RequiresNotNull(presentation, "presentation");
            Contract.RequiresNotNull(realPicking, "realPicking");

            myPresentation = presentation;
            myPicking      = realPicking;

            myCache = new Dictionary <string, bool>();

            myPresentation.GraphVisibilityChanged += OnGraphVisibilityChanged;
        }
        public PickingCache( IGraphPresentation presentation, IGraphPicking realPicking )
        {
            Contract.RequiresNotNull( presentation, "presentation" );
            Contract.RequiresNotNull( realPicking, "realPicking" );

            myPresentation = presentation;
            myPicking = realPicking;

            myCache = new Dictionary<string, bool>();

            myPresentation.GraphVisibilityChanged += OnGraphVisibilityChanged;
        }
Beispiel #5
0
 public bool ShouldBeVisibile(IGraphPicking picking)
 {
     return(Originals.Any(e => picking.Pick(e)));
 }