getFishboneWidth method
double
getFishboneWidth(
)
override
Implementation
@override
double getFishboneWidth() {
if (getRightItems().isEmpty && getLeftItems().isEmpty) {
return _fishboneWidth == 0
? (getSize()?.width ?? 200) +
(getParentNode()?.getHSpace() ?? 0) +
(getSize()?.height ?? 200)
: _fishboneWidth;
} else {
double w = _fishboneWidth;
for (IMindMapNode node in getRightItems()) {
double w1 = node.getFishboneWidth();
if (w1 > w) {
w = w1;
}
}
for (IMindMapNode node in getLeftItems()) {
double w1 = node.getFishboneWidth();
if (w1 > w) {
w = w1;
}
}
if (getParentNode()?.getNodeType() == NodeType.root) {
if (w < (getSize()?.width ?? 0) / 2) {
w = (getSize()?.width ?? 0) / 2;
}
}
return w;
}
}