@@ -49,6 +49,9 @@ abstract class BaseNode
49
49
/// Whether this node is visible or not.
50
50
bool visible;
51
51
52
+ /// Determines whether this node supports visibility or not.
53
+ bool get supportsVisibility => true ;
54
+
52
55
BoxConstraintsModel _constraints;
53
56
54
57
/// Constraints apply to the [middleBoxLocal] .
@@ -66,6 +69,10 @@ abstract class BaseNode
66
69
@JsonKey (includeFromJson: false , includeToJson: false )
67
70
BoxConstraintsModel get resolvedConstraints => _resolvedConstraints;
68
71
72
+ /// Determines whether this node supports constraints or not.
73
+ @JsonKey (includeFromJson: false , includeToJson: false )
74
+ bool get supportsConstraints => true ;
75
+
69
76
/// Edge Pins apply to the [outerBoxLocal] .
70
77
/// See [EdgePinsModel] for more info on how to define the edge pins.
71
78
// @JsonKey(excludeIf: excludeEdgePinsIf)
@@ -325,6 +332,10 @@ abstract class BaseNode
325
332
@JsonKey (includeFromJson: false , includeToJson: false )
326
333
double globalRotationRadians;
327
334
335
+ /// Determines whether this node allows itself to be rotated or not.
336
+ @JsonKey (includeFromJson: false , includeToJson: false )
337
+ bool get supportsRotation => true ;
338
+
328
339
/// A simple label for console debugging.
329
340
@JsonKey (includeFromJson: false , includeToJson: false )
330
341
String get debugLabel => '$name [$id ]' ;
@@ -338,6 +349,10 @@ abstract class BaseNode
338
349
@JsonKey (includeFromJson: false , includeToJson: false )
339
350
bool get supportsPadding => false ;
340
351
352
+ /// Determines whether this node supports margin.
353
+ @JsonKey (includeFromJson: false , includeToJson: false )
354
+ bool get supportsMargin => true ;
355
+
341
356
/// Width of the node in fraction of the parent's width.
342
357
/// [widthFactor] of [0.5] means that the node will be half the width of its
343
358
/// parent.
0 commit comments