@class TSDConnectionLineInfo, TSUBezierPath, TSDInfoGeometry, TSDLayout, TSDConnectionLinePathSource, NSObject; @protocol TSDInfo; @interface TSDConnectionLineAbstractLayout : TSDShapeLayout { TSUBezierPath *mClippedBezierPath; TSDConnectionLinePathSource *mOriginalPathSource; TSDConnectionLinePathSource *mConnectedPathSource; TSDInfoGeometry *mConnectedInfoGeometry; TSUBezierPath *mCachedFromWrapPath; TSUBezierPath *mCachedToWrapPath; double mCachedFromOutset; double mCachedToOutset; TSUBezierPath *mCachedFromOutsetWrapPath; TSUBezierPath *mCachedToOutsetWrapPath; TSDLayout *mOldConnectedFrom; TSDLayout *mOldConnectedTo; BOOL mValidConnections; BOOL mVisibleLine; struct CGPoint { double x; double y; } mLooseEndPosition; struct CGPoint { double x; double y; } mAcumulatedDrag; BOOL mUseResizePoints[3]; struct CGPoint { double x; double y; } mResizeControlPoints[3]; } @property (weak, nonatomic) TSDLayout *connectedFrom; @property (weak, nonatomic) TSDLayout *connectedTo; @property (weak, nonatomic) NSObject *connectedFromInfo; @property (weak, nonatomic) NSObject *connectedToInfo; @property (readonly, nonatomic) BOOL validLine; @property (readonly, nonatomic) TSDConnectionLinePathSource *connectedPathSource; @property (nonatomic) unsigned long long dynamicOutsetType; @property (nonatomic) BOOL useDynamicOutsets; @property (nonatomic) double dynamicOutsetFrom; @property (nonatomic) double dynamicOutsetTo; @property (readonly, nonatomic) double outsetFrom; @property (readonly, nonatomic) double outsetTo; @property (readonly, nonatomic) TSDConnectionLineInfo *connectionLineInfo; @property (readonly, nonatomic, getter=isStraightLine) BOOL straightLine; - (BOOL)isDraggable; - (void)dealloc; - (struct CGSize { double x0; double x1; })minimumSize; - (id)path; - (void).cxx_destruct; - (BOOL)isInvisible; - (void)invalidateConnections; - (void)invalidatePath; - (BOOL)supportsRotation; - (void)invalidateSize; - (BOOL)shouldValidate; - (void)parentDidChange; - (void)invalidatePosition; - (void)processChangedProperty:(int)a0; - (BOOL)shouldDisplayGuides; - (int)wrapType; - (id)additionalLayoutsForRepCreation; - (id)reliedOnLayouts; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })boundsForStandardKnobs; - (BOOL)canBeIntersected; - (BOOL)canEndpointsCoincide; - (BOOL)canResetTextAndObjectHandles; - (void)checkConnections; - (id)clipPath:(id)a0 onLayout:(id)a1 outset:(double)a2 reversed:(BOOL)a3 isValid:(BOOL *)a4; - (void)connectedLayoutInvalidated:(id)a0; - (struct CGPoint { double x0; double x1; })controlPointForPointA:(struct CGPoint { double x0; double x1; })a0 pointB:(struct CGPoint { double x0; double x1; })a1 andOriginalA:(struct CGPoint { double x0; double x1; })a2 originalB:(struct CGPoint { double x0; double x1; })a3; - (id)createConnectedPathFrom:(id)a0 to:(id)a1 withControlPoints:(struct CGPoint { double x0; double x1; }[3])a2; - (struct CGPoint { double x0; double x1; })getControlKnobPosition:(unsigned long long)a0; - (id)layoutInfoGeometry; - (id)p_infoForConnectingToInfo:(id)a0; - (BOOL)p_isConnectedToLockedObjects; - (BOOL)pathIsLineSegment; - (BOOL)pathIsOpen; - (id)pathSource; - (void)removeConnections; - (BOOL)supportsFlipping; - (struct CGPoint { double x0; double x1; })unclippedHeadPoint; - (struct CGPoint { double x0; double x1; })unclippedTailPoint; - (void)updateConnectedPath; - (BOOL)p_isInfoAKeynoteTemplateObject:(id)a0; - (void)connectedLayoutDisconnected:(id)a0; - (void)i_setVisibleLine:(BOOL)a0; - (BOOL)i_visibleLine; - (void)i_willValidateLayout; - (void)invalidateAndCleanupConnectedLayouts; - (BOOL)p_connectedInfoInDocument:(id)a0; - (BOOL)shouldAdjustForStrokeWidthForCollabCursor; @end