Expand description

This module implements a subset of dot language attributes. These functions will generate some predefined AttrPairs that be used together with the add_attrpair function of Edge and the add_pair function of AttrList. Notice that only an incomplete subset is implemented due to the limitations of the function prototype and type system. To add other attributes, you can use an unsafe way to construct an identity pair.

use tabbycat::Identity;
let my_pair = (Identity::String("label".into()), Identity::Quoted("test".to_string()));

(Most of the time the safe way (Identity::id) should be good, but as we didn’t provide a type for something like the lblString, you may want to add a unquoted string using the unsafe way.)

Enums

Shapes of the arrow. Notice that the dot language has a special syntax for creating different arrow shapes. We actually expand all [modifier] primitive shapes here and you can you the functions like arrowhead2, arrowhead3, arrowhead4 to repeat the patterns.

Clustering Mode

A list of colors that can be used in the dot language. Notice that we are actually listing a union of X11 colors and SVG colors, you should be aware of what color scheme you are really using. For unlisted colors, see the instructions above on how to implement your own attribute pairs.

Arrow direction

Output mode

Paging Direction

Point type in the dot language

Quadtree Algorithm

Rank Direction

Ranking method

Shapes of the node

Smoothing Method

Styles, see the document

Functions