TooltipView constructor
TooltipView(
- TooltipModel model,
- Widget child
Implementation
TooltipView(this.model, this.child) : super(key: ObjectKey(model)) {
// set tooltip position
var position = TooltipPosition.rightCenter;
switch (model.position?.toLowerCase().trim()) {
case 'lefttop':
case 'leftstart':
position = TooltipPosition.leftStart;
break;
case 'left':
case 'leftcenter':
position = TooltipPosition.leftCenter;
break;
case 'leftbottom':
case 'leftend':
position = TooltipPosition.leftEnd;
break;
case 'righttop':
case 'rightstart':
position = TooltipPosition.rightStart;
break;
case 'right':
case 'rightcenter':
position = TooltipPosition.rightCenter;
break;
case 'rightbottom':
case 'rightend':
position = TooltipPosition.rightEnd;
break;
case 'topleft':
case 'topstart':
position = TooltipPosition.topStart;
break;
case 'top':
case 'topcenter':
position = TooltipPosition.topCenter;
break;
case 'topright':
case 'topend':
position = TooltipPosition.topEnd;
break;
case 'bottomleft':
case 'bottomstart':
position = TooltipPosition.bottomStart;
break;
case 'bottom':
case 'bottomcenter':
position = TooltipPosition.bottomCenter;
break;
case 'bottomright':
case 'bottomend':
position = TooltipPosition.bottomEnd;
break;
}
this.position = position;
// set tooltip content
List<Widget> children = model.inflate();
content = children.length == 1
? children[0]
: Column(mainAxisSize: MainAxisSize.min, children: children);
}