2023-04-01 00:18:17 +00:00
|
|
|
package d2graph
|
|
|
|
|
|
2023-04-05 18:11:31 +00:00
|
|
|
func (obj *Object) IsGridDiagram() bool {
|
2023-04-04 04:38:08 +00:00
|
|
|
return obj != nil && obj.Attributes != nil &&
|
2023-04-06 22:43:03 +00:00
|
|
|
(obj.Attributes.GridRows != nil || obj.Attributes.GridColumns != nil)
|
2023-04-01 00:18:17 +00:00
|
|
|
}
|
2023-04-05 00:44:05 +00:00
|
|
|
|
2023-04-05 18:11:31 +00:00
|
|
|
func (obj *Object) ClosestGridDiagram() *Object {
|
2023-04-06 22:32:09 +00:00
|
|
|
if obj == nil {
|
2023-04-05 00:44:05 +00:00
|
|
|
return nil
|
|
|
|
|
}
|
2023-04-06 22:32:09 +00:00
|
|
|
if obj.IsGridDiagram() {
|
|
|
|
|
return obj
|
2023-04-05 00:44:05 +00:00
|
|
|
}
|
2023-04-05 18:11:31 +00:00
|
|
|
return obj.Parent.ClosestGridDiagram()
|
2023-04-05 00:44:05 +00:00
|
|
|
}
|