@class TSPObjectContext, TSDDisplayLinkDispatch, NSMutableArray, TSDCanvasLayer, NSString, TSDEditorController, NSMutableSet, TSDTrackerManipulatorCoordinator, TSDTrackingController, TSKChangeNotifier, NSArray, NSFormatter, TSKDocumentRoot, TSDGuideController, TSDTileStorage, NSObject, NSSet, TSDGestureDispatcher, TSDTextInputResponder, NSRecursiveLock, TSKAccessController, TSDCanvas, TSDContainerRep, TSDCanvasAnimation, TSDDynamicOperationController, CALayer, TSDGuideStorage, TSDCanvasView, TSDLayoutController, TSDBackgroundLayoutAndRenderState; @protocol TSDAnnotationPopoverController, TSDCanvasEditor, TSDRepDirectLayerHostProvider, TSKDocumentRootProvider, TSDImageHUDController, TSDRulerController, TSDInteractiveCanvasControllerDelegate, TSDEditor, TSDCanvasLayerHosting, TSDAnnotationHosting; @interface TSDInteractiveCanvasController : NSObject { struct __CFDictionary { } *mContainerLayersByRep; struct __CFDictionary { } *mRepLayersByRep; struct __CFDictionary { } *mRepsByRepLayer; struct __CFDictionary { } *mRepsByContainerLayer; struct __CFDictionary { } *mDirectLayerHostsByRep; TSDEditorController *mEditorController; TSDGuideController *mGuideController; BOOL mHasBeenTornDown; BOOL mHadLayerHost; BOOL mLayerHostHasBeenTornDown; TSDInteractiveCanvasController *mTextInputResponderSource; unsigned long long mTextInputResponderShareCount; NSFormatter *mUnitFormatter; BOOL mShouldAnimateAutoscroll; BOOL mShouldCenterSelectionWhenAutoscrolling; CALayer *mPopoutLayer; NSMutableArray *mDecorators; BOOL mInDynamicOperation; int mDynamicOperationCounter; struct CGColor { } *mSelectionHighlightColor; TSDCanvasAnimation *mCurrentAnimation; TSDTrackerManipulatorCoordinator *mTMCoordinator; TSDDynamicOperationController *mDynOpController; TSDGestureDispatcher *mGestureDispatcher; NSMutableArray *mInspectorGestureRecognizersToReenable; id /* block */ mInspectorSingleTapBlock; TSDBackgroundLayoutAndRenderState *mBackgroundLayoutAndRenderState; BOOL mTemporarilyDisabledLayoutAndRenderOnThreadDuringScroll; BOOL mCurrentlyScrolling; BOOL mAnimatingScroll; BOOL mSuppressedAutozoom; id mSelectionChangeNotificationDeferredEditor; BOOL mShouldAutoscrollToSelectionAfterGestures; BOOL mSuspendedLowPriorityThreadDispatcher; int mDisableThreadedLayoutAndRender; unsigned int mEmbeddedCanvasScrolling; NSMutableArray *mHiddenTopLevelLayers; NSMutableSet *mNotificationsToPostWithValidLayouts; NSArray *mLayersWithZoomFadeAnimation; BOOL mDynamicallyZooming; double mDynamicViewScale; BOOL mUsesAlternateDrawableSelectionHighlight; double mTargetPointSize; BOOL mSuppressingKeyboard; NSObject *mImageHUDController; long long mImageHUDLock; NSObject *mIAHUDController; long long mIAHUDLock; BOOL mIgnoreContentOffsetChanges; TSDTileStorage *mTileStorage; struct CGPoint { double x; double y; } mZoomCenterInBounds; NSMutableArray *mBackgroundRenderingObjects; id mDisplayedAnnotation; id mAnnotationPopoverController; NSMutableArray *mNextLayoutBlocks; BOOL mShowUserDefinedGuides; BOOL mTeardownOnBackgroundThread; TSDDisplayLinkDispatch *mDisplayLinkDispatch; BOOL mRepViewsNeedUpdating; NSRecursiveLock *mSelfSync; } @property (readonly, nonatomic) struct { struct CGPoint { double x0; double x1; } x0; } screenTopContentPlacement; @property (readonly, nonatomic) struct { struct CGPoint { double x0; double x1; } x0; } screenBottomContentPlacement; @property (readonly, nonatomic) struct { struct CGPoint { double x0; double x1; } x0; } touchContentPlacement; @property (readonly, nonatomic) struct { struct CGPoint { double x0; double x1; } x0; } centerPlusMovementContentPlacement; @property struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } p_visibleBoundsRectForTiling; @property struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } p_visibleUnscaledRect; @property (copy) NSSet *p_cachedTopLevelTilingLayers; @property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } unobscuredScrollViewFrame; @property (retain, nonatomic) id directLayerHostProvider; @property (readonly, nonatomic) TSDCanvas *canvas; @property (nonatomic) id layerHost; @property (nonatomic) id delegate; @property (readonly, nonatomic) TSKDocumentRoot *documentRoot; @property (readonly, nonatomic) id documentRootProvider; @property (readonly, nonatomic) TSPObjectContext *objectContext; @property (readonly, nonatomic) TSKChangeNotifier *changeNotifier; @property (readonly, nonatomic) TSKAccessController *accessController; @property (nonatomic) BOOL resizeCanvasOnLayout; @property (readonly, nonatomic) struct CGSize { double x0; double x1; } defaultMinimumUnscaledCanvasSize; @property (nonatomic) NSObject *rulerController; @property (readonly, nonatomic) TSDContainerRep *topLevelContainerRepForEditing; @property (readonly, nonatomic) BOOL inspectorModeEnabled; @property (readonly, nonatomic) BOOL animatingViewScale; @property (readonly, nonatomic) TSDEditorController *editorController; @property (readonly, nonatomic) TSDTextInputResponder *textInputResponder; @property (nonatomic) BOOL preventSettingNilEditorOnTextResponder; @property (retain, nonatomic) NSObject *canvasEditor; @property (nonatomic) BOOL createRepsForOffscreenLayouts; @property (nonatomic) BOOL allowLayoutAndRenderOnThread; @property (nonatomic) BOOL nestedCanvasAllowLayoutAndRenderOnThread; @property (nonatomic) BOOL forceTilingLayoutOnThreadWhenScrolling; @property (nonatomic) BOOL staticLayoutAndRenderOnThread; @property (readonly, nonatomic) BOOL currentlyWaitingOnThreadedLayoutAndRender; @property (readonly, nonatomic) BOOL currentlyScrolling; @property (nonatomic) BOOL shouldAutoscrollToSelectionAfterLayout; @property (nonatomic) BOOL suppressAutozoomToSelectionAfterLayout; @property (nonatomic) BOOL textGesturesInFlight; @property (nonatomic) BOOL shouldSuppressRendering; @property (readonly, nonatomic) TSDCanvasView *canvasView; @property (readonly, nonatomic) TSDCanvasLayer *canvasLayer; @property (readonly, nonatomic) double defaultViewScale; @property (nonatomic) double viewScale; @property (readonly, nonatomic) double currentViewScale; @property (readonly, nonatomic) double fitWidthViewScale; @property (readonly, nonatomic) struct CGSize { double x0; double x1; } canvasScrollingOutset; @property (readonly, nonatomic) struct CGSize { double x0; double x1; } sizeOfScrollViewEnclosingCanvas; @property (nonatomic) BOOL shouldClipThemeContentToCanvas; @property (nonatomic) BOOL shouldShowUserDefinedGuides; @property (readonly, nonatomic) TSDGuideStorage *guideStorage; @property (copy, nonatomic) NSArray *infosToDisplay; @property (nonatomic) struct CGColor { } *selectionHighlightColor; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleBoundsRect; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleBoundsRectClippedToWindow; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleBoundsRectForTiling; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleBoundsRectUsingSizeOfEnclosingScrollView; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleUnscaledRect; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleUnscaledRectForCanvasUI; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleUnscaledRectForAutoscroll; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleUnscaledRectValidWhileZooming; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleUnscaledRectForScrollingAutomatically; @property (readonly, nonatomic) TSDLayoutController *layoutController; @property (readonly, nonatomic) CALayer *repContainerLayer; @property (readonly, nonatomic) NSArray *additionalLayersUnderRepLayers; @property (readonly, nonatomic) NSArray *additionalLayersOverRepLayers; @property (nonatomic) BOOL usesAlternateDrawableSelectionHighlight; @property (readonly, nonatomic) CALayer *overlayLayer; @property (nonatomic) BOOL overlayLayerSuppressed; @property (nonatomic) BOOL showGrayOverlay; @property (nonatomic) BOOL showInvisibleObjects; @property (nonatomic) BOOL showsComments; @property (readonly, retain, nonatomic) TSDDynamicOperationController *dynamicOperationController; @property (readonly, retain, nonatomic) TSDTrackerManipulatorCoordinator *tmCoordinator; @property (nonatomic) BOOL inReadMode; @property (nonatomic) BOOL inVersionBrowsingMode; @property (readonly, retain, nonatomic) TSDGestureDispatcher *gestureDispatcher; @property (nonatomic) BOOL supportsBackgroundTileRendering; @property (nonatomic) struct CGPoint { double x; double y; } lastTapPoint; @property (readonly, nonatomic) id canvasReferenceController; @property (retain, nonatomic) TSDTrackingController *trackingController; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (double)smallRepOutsetForHitTesting; + (id)keyPathsForValuesAffectingCurrentViewScale; + (id)keyPathsForValuesAffectingDocumentRoot; + (id)keyPathsForValuesAffectingEditorController; + (id)keyPathsForValuesAffectingViewScale; + (BOOL)selectorIsActionMethod:(SEL)a0; - (void)scrollViewDidEndDecelerating:(id)a0; - (void)setContentOffset:(struct CGPoint { double x0; double x1; })a0 animated:(BOOL)a1; - (void)layoutIfNeeded; - (void)forwardInvocation:(id)a0; - (struct CGPoint { double x0; double x1; })contentOffset; - (id)init; - (void)dealloc; - (id)actionForLayer:(id)a0 forKey:(id)a1; - (void)teardown; - (void)endEditing; - (double)animationDuration; - (void)encodeWithCoder:(id)a0; - (void)scrollViewDidEndDragging:(id)a0 willDecelerate:(BOOL)a1; - (void)scrollViewDidEndScrollingAnimation:(id)a0; - (void)drawLayer:(id)a0 inContext:(struct CGContext { } *)a1; - (id)methodSignatureForSelector:(SEL)a0; - (void)setAnimationDuration:(double)a0; - (void)scrollViewDidScrollToTop:(id)a0; - (void)setAnimationRepeatCount:(float)a0; - (void)setAnimationDelay:(double)a0; - (id)annotationController; - (void)scrollViewDidScroll:(id)a0; - (id)initWithCoder:(id)a0; - (void)scrollViewWillBeginDragging:(id)a0; - (void)scrollRectToVisible:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 animated:(BOOL)a1; - (void)scrollViewWillEndDragging:(id)a0 withVelocity:(struct CGPoint { double x0; double x1; })a1 targetContentOffset:(inout struct CGPoint { double x0; double x1; } *)a2; - (BOOL)respondsToSelector:(SEL)a0; - (void)setAnimationTimingFunction:(id)a0; - (void)setAnimationRepeatAutoreverses:(BOOL)a0; - (void)beginAnimations:(id)a0 context:(void *)a1; - (void)commitAnimations; - (void)setAnimationCompletionBlock:(id /* block */)a0; - (void)setAnimationDelegate:(id)a0; - (void)setAnimationDidStopSelector:(SEL)a0; - (void)setAnimationStartDate:(id)a0; - (void)setAnimationWillStartSelector:(SEL)a0; - (BOOL)hasAnnotations; - (BOOL)isPrinting; - (void)deselectAll:(id)a0; - (void)p_commonInit; - (id)hitRep:(struct CGPoint { double x0; double x1; })a0 withGesture:(id)a1 passingTest:(id /* block */)a2; - (void)setSelection:(id)a0 onModel:(id)a1 withFlags:(unsigned long long)a2; - (void)asyncProcessChanges:(id)a0 forChangeSource:(id)a1; - (id)beginEditingRep:(id)a0; - (id)beginEditingRepForInfo:(id)a0; - (struct CGPoint { double x0; double x1; })convertBoundsToUnscaledPoint:(struct CGPoint { double x0; double x1; })a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })convertBoundsToUnscaledRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })convertUnscaledToBoundsRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (void)doubleTappedCanvasBackgroundAtPoint:(struct CGPoint { double x0; double x1; })a0; - (id)i_topLevelLayersForTiling; - (void)invalidateLayers; - (void)invalidateReps; - (void)invalidateVisibleBounds; - (BOOL)isCanvasInteractive; - (BOOL)isPrintingCanvas; - (id)layoutForInfo:(id)a0; - (void)makeEditorPerformAction:(SEL)a0 withSender:(id)a1; - (BOOL)p_currentlyScrolling; - (BOOL)p_shouldLayoutAndRenderOnThreadForcePendingLayout:(BOOL)a0; - (id)repForInfo:(id)a0; - (struct CGPoint { double x0; double x1; })scrollView:(id)a0 restrictContentOffset:(struct CGPoint { double x0; double x1; })a1; - (void)scrollView:(id)a0 willAnimateToContentOffset:(struct CGPoint { double x0; double x1; })a1; - (BOOL)shouldPopKnobsOutsideEnclosingScrollView; - (BOOL)shouldResizeCanvasToScrollView; - (BOOL)shouldShowInstructionalText; - (BOOL)shouldShowTextOverflowGlyphs; - (BOOL)spellCheckingSupported; - (BOOL)spellCheckingSuppressed; - (void)syncProcessChanges:(id)a0 forChangeSource:(id)a1; - (void)tappedCanvasBackgroundAtPoint:(struct CGPoint { double x0; double x1; })a0; - (id)topLevelRepsForHitTesting; - (id)validatedLayoutForInfo:(id)a0; - (BOOL)canDrawTilingLayerInBackground:(id)a0; - (void)changeFirstResponderIfNecessary; - (struct CGPoint { double x0; double x1; })clampedUnscaledContentOffset:(struct CGPoint { double x0; double x1; })a0 forViewScale:(double)a1 scrollViewBoundsSize:(struct CGSize { double x0; double x1; })a2; - (id)layoutsForInfo:(id)a0; - (void)p_invalidateForBackgroundLayout; - (BOOL)p_shouldLayoutAndRenderOnThread; - (void)scrollCurrentSelectionToVisible; - (BOOL)allowAutoscroll; - (void)canvasDidUpdateRepsFromLayouts:(id)a0; - (id)hitRep:(struct CGPoint { double x0; double x1; })a0; - (void)i_canvasWideGamutValueDidChange; - (id)newCanvasEditor; - (void)p_discardContainerLayer:(id)a0 forRep:(id)a1; - (void)presentError:(id)a0 completionHandler:(id /* block */)a1; - (void)scrollSearchReferenceToVisible:(id)a0; - (id)actionGhostKnobForRep:(id)a0; - (void)actionGhostKnobHitForRep:(id)a0; - (void)addBackgroundRenderingObject:(id)a0; - (void)addCommonObservers; - (void)addDecorator:(id)a0; - (id)additionalVisibleInfosForCanvas:(id)a0; - (BOOL)allowNegativeAutoscroll; - (id)ancestorRepOfRep:(id)a0 orDelegateConformingToProtocol:(id)a1; - (void)animateToViewScale:(double)a0 contentOffset:(struct CGPoint { double x0; double x1; })a1 duration:(double)a2; - (void)animateToViewScale:(double)a0 contentOffset:(struct CGPoint { double x0; double x1; })a1 duration:(double)a2 completion:(id /* block */)a3; - (void)animateToViewScale:(double)a0 contentOffset:(struct CGPoint { double x0; double x1; })a1 duration:(double)a2 forceAnimation:(BOOL)a3 completion:(id /* block */)a4; - (double)animationBeginTime; - (BOOL)attachedCommentsAllowedForDrawable:(id)a0; - (void)backgroundLayoutAndRenderState:(id)a0 performWorkInBackgroundTilingOnly:(BOOL)a1; - (BOOL)backgroundLayoutAndRenderState:(id)a0 shouldDispatchBackgroundWork:(id /* block */)a1; - (void)backgroundLayoutAndRenderStateDidPerformBackgroundWork:(id)a0; - (void)beginDynamicOperation; - (id)beginEditingRep:(id)a0 clearingSelection:(BOOL)a1 withEditorProvider:(id /* block */)a2; - (void)beginPossiblyParallelInspectorDynamicOperation; - (void)beginScrollingOperation; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })boundingRectForActiveGuidesForRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (BOOL)canPerformInteractiveAction:(SEL)a0 withSender:(id)a1; - (BOOL)canZoomToCurrentSelection; - (void)canvas:(id)a0 createdRep:(id)a1; - (id)canvas:(id)a0 layoutGeometryProviderForLayout:(id)a1; - (void)canvas:(id)a0 willLayoutRep:(id)a1; - (void)canvasDidLayout:(id)a0; - (void)canvasDidUpdateVisibleBounds:(id)a0; - (void)canvasDidValidateLayouts:(id)a0; - (void)canvasDidValidateLayoutsWithDependencies:(id)a0; - (void)canvasLayoutInvalidated:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })canvasViewBoundsWithBounds:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (BOOL)canvasViewShouldBecomeFirstResponder:(id)a0; - (void)canvasWillLayout:(id)a0; - (void)canvasWillUpdateRepsFromLayouts:(id)a0; - (id)clampContentLocation:(id)a0 forPlacement:(struct { struct CGPoint { double x0; double x1; } x0; })a1; - (id)clampedCenterContentLocationForPoint:(struct CGPoint { double x0; double x1; })a0 withPlacement:(struct { struct CGPoint { double x0; double x1; } x0; })a1 viewScale:(double)a2; - (struct CGPoint { double x0; double x1; })clampedCenterPointForPoint:(struct CGPoint { double x0; double x1; })a0 withPlacement:(struct { struct CGPoint { double x0; double x1; } x0; })a1 viewScale:(double)a2; - (struct CGPoint { double x0; double x1; })clampedUnscaledContentOffset:(struct CGPoint { double x0; double x1; })a0 forViewScale:(double)a1; - (void)closeOverlays; - (id)containerLayerForRep:(id)a0; - (struct { struct CGPoint { double x0; double x1; } x0; })contentPlacementForPoint:(struct CGPoint { double x0; double x1; })a0 inView:(id)a1; - (struct CGSize { double x0; double x1; })convertBoundsToUnscaledSize:(struct CGSize { double x0; double x1; })a0; - (id)convertContentLocation:(id)a0 fromPlacement:(struct { struct CGPoint { double x0; double x1; } x0; })a1 toPlacement:(struct { struct CGPoint { double x0; double x1; } x0; })a2; - (struct CGPoint { double x0; double x1; })convertUnscaledToBoundsPoint:(struct CGPoint { double x0; double x1; })a0; - (struct CGSize { double x0; double x1; })convertUnscaledToBoundsSize:(struct CGSize { double x0; double x1; })a0; - (int)defaultKnobTypeForRep:(id)a0; - (void)didEndDrawingTilingLayerInBackground:(id)a0 withToken:(id)a1; - (void)didLayoutAndRenderOnThread; - (void)disableThreadedLayoutAndRender; - (void)discardRepForClassChange:(id)a0; - (void)displayRulerForRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (void)displayRulerWithSlowFade:(BOOL)a0; - (void)embeddedCanvasDidEndScrolling; - (void)embeddedCanvasWillBeginScrolling; - (void)enableThreadedLayoutAndRender; - (void)endDynamicOperation; - (void)endPossiblyParallelInspectorDynamicOperation; - (void)endScrollingOperation; - (void)forceBackgroundLayout; - (void)forceStopScrolling; - (id)gestureTargetStack:(id)a0; - (struct CGSize { double x0; double x1; })growUnscaledCanvasLayerSize:(struct CGSize { double x0; double x1; })a0; - (BOOL)handleDoubleTapAtPoint:(struct CGPoint { double x0; double x1; })a0; - (BOOL)handleSingleTapAtPoint:(struct CGPoint { double x0; double x1; })a0; - (void)hideRuler; - (id)hitKnobAtPoint:(struct CGPoint { double x0; double x1; })a0 returningRep:(id *)a1; - (id)hitRepChromeAtUnscaledPoint:(struct CGPoint { double x0; double x1; })a0; - (id)hitRepsAtPoint:(struct CGPoint { double x0; double x1; })a0 withSlop:(struct CGSize { double x0; double x1; })a1; - (double)i_adjustViewScale:(double)a0; - (struct CGSize { double x0; double x1; })i_canvasCenterOffsetForProposedViewScale:(double)a0 originalViewScale:(double)a1; - (void)i_canvasContentsScaleDidChange; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })i_clippingBoundsForScrollViewEnclosingCanvas; - (id)i_currentAnimation; - (void)i_cvcWillBecomeFirstResponder; - (void)i_cvcWillResignFirstResponder; - (id)i_descriptionForViewScale:(double)a0; - (void)i_drawRepWithReadLock:(id)a0 inContext:(struct CGContext { } *)a1 forLayer:(id)a2; - (BOOL)i_inPrintPreviewMode; - (void)i_invalidateSelectionHighlightLayers; - (void)i_layerHostHasBeenTornDown; - (void)i_layout; - (void)i_layoutRegistered:(id)a0; - (void)i_layoutUnregistered:(id)a0; - (BOOL)i_needsLayout; - (double)i_nextCanvasViewScaleDetentForProposedViewScale:(double)a0 greater:(BOOL)a1; - (void)i_recordUserViewScale; - (void)i_repNeedsDisplay:(id)a0; - (void)i_repNeedsDisplay:(id)a0 inRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1; - (void)i_syncWithLayoutThread; - (BOOL)i_temporarilyDisabledLayoutAndRenderOnThreadDuringScroll; - (id)i_tileStorage; - (void)i_viewDidZoomToViewScale:(double)a0; - (void)i_viewIsZoomingAtPoint:(struct CGPoint { double x0; double x1; })a0; - (void)i_viewScaleDidChange; - (double)i_viewScaleForProposedViewScale:(double)a0 originalViewScale:(double)a1; - (void)i_viewScrollDidChange; - (void)i_viewScrollWillChange; - (void)i_viewScrollingEnded; - (void)i_viewWillBeginZooming; - (id)infoForModel:(id)a0 withSelection:(id)a1; - (id)infoToScrollToForModel:(id)a0 withSelection:(id)a1; - (id)infosForGuides; - (void)invalidateComments; - (void)invalidateLayoutInBackground:(id)a0; - (void)invalidateRepsIfSynced; - (void)invalidateRepsInBackground; - (void)invalidateVisibleBoundsInBackground; - (BOOL)isInDynamicOperation; - (BOOL)isInInspectorDynamicOperation; - (BOOL)keyboardSuppressedAndTextInputEditorIgnoresFirstResponderChanges; - (id)layerForRep:(id)a0; - (id)layoutForInfoNearestVisibleRect:(id)a0; - (id)layoutForInfoNearestVisibleRect:(id)a0 intersectingSelection:(id)a1; - (id)layoutForModel:(id)a0 withSelection:(id)a1; - (void)layoutInvalidated; - (id)layoutsForInfo:(id)a0 intersectingSelection:(id)a1; - (id)layoutsForModel:(id)a0 withSelection:(id)a1; - (id)localizedPercentStringForAlignmentGuide:(id)a0; - (void)makeUserDefinedGuidesVisible; - (BOOL)mustDrawTilingLayerOnMainThread:(id)a0; - (struct CGColor { } *)newDefaultSelectionHighlightColor; - (void)p_acquireLockAndPerformAction:(id /* block */)a0; - (BOOL)p_allowUpdateViewsFromReps; - (void)p_applyViewScale:(double)a0 andContentOffset:(struct CGPoint { double x0; double x1; })a1; - (void)p_autoscrollToSelection:(id)a0 withInfo:(id)a1 isInitialSelection:(BOOL)a2 focusRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a3; - (void)p_autoscrollToSelection:(id)a0 withInfo:(id)a1 isInitialSelection:(BOOL)a2 focusRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a3 scrollImmediately:(BOOL)a4 skipZoom:(BOOL)a5; - (id)p_backgroundLayoutAndRenderState; - (void)p_beginZoomingOperation; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })p_calculateVisibleBoundsRectForTiling; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })p_calculateVisibleUnscaledRect; - (BOOL)p_centerOnInitialSelection; - (BOOL)p_currentlyScrollingIncludeEmbeddedCanvasScrolling:(BOOL)a0; - (id)p_decorators; - (void)p_discardLayer:(id)a0 forRep:(id)a1; - (void)p_drawLayerWithReadLock:(id)a0; - (void)p_editorControllerDidChangeCurrentEditors:(id)a0; - (void)p_editorControllerDidChangeTextInputEditor:(id)a0; - (void)p_editorControllerSelectionDidChange:(id)a0; - (void)p_editorControllerSelectionDidChangeAndWantsKeyboard:(id)a0; - (void)p_editorDidChangeSelection:(id)a0 withSelectionFlags:(unsigned long long)a1; - (void)p_editorDoneChangingSelection:(id)a0; - (void)p_editorDoneChangingSelection:(id)a0 withFlags:(unsigned long long)a1; - (BOOL)p_endEditingToBeginEditingRep:(id)a0; - (void)p_endZoomingOperation; - (void)p_guideColorChanged:(id)a0; - (void)p_iccWillBecomeFirstResponderNotification:(id)a0; - (void)p_iccWillResignFirstResponderNotification:(id)a0; - (void)p_invalidateTilingLayers; - (void)p_layoutWithReadLock; - (void)p_maybeSetTextResponderEditorTo:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })p_outsetSelectionRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (id)p_overlayLayerForReps:(id)a0; - (void)p_postNotificationOnMainThreadWithValidLayouts:(id)a0; - (void)p_recursiveHitKnobAtPoint:(struct CGPoint { double x0; double x1; })a0 inRep:(id)a1 minDistance:(double *)a2 hitKnob:(id *)a3 hitRep:(id *)a4; - (void)p_recursivelyClearLayerDelegate:(id)a0; - (void)p_recursivelyUpdateLayerEdgeAntialiasingForLayer:(id)a0; - (void)p_recursivelyUpdateLayerForRep:(id)a0 accumulatingLayers:(id)a1 andReps:(id)a2; - (id)p_repForLayout:(id)a0 createIfNeeded:(BOOL)a1; - (void)p_rulerUnitsDidChangeNotification:(id)a0; - (void)p_scrollModelToVisible:(id)a0 withSelection:(id)a1; - (void)p_scrollToPrimarySelectionForEditor:(id)a0 skipZoom:(BOOL)a1; - (void)p_scrollViewDidEndScrollingAnimation:(id)a0; - (id)p_setSelection:(id)a0 onInfo:(id)a1 withFlags:(unsigned long long)a2; - (void)p_setTargetPointSize:(double)a0; - (void)p_setupPopoutLayerForReps:(id)a0; - (BOOL)p_shouldSuppressAutozoomForEditor:(id)a0; - (double)p_targetPointSize; - (void)p_textGesturesDidEndNotification:(id)a0; - (void)p_textGesturesWillBeginNotification:(id)a0; - (void)p_updateCanvasSizeFromLayouts; - (void)p_updateLayersFromReps; - (void)p_updateViewsFromReps; - (void)p_updateViewsFromRepsForceUpdate:(BOOL)a0; - (void)p_viewScrollingEnded; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })p_visibleBoundsRectUsingSizeOfEnclosingScrollView:(BOOL)a0; - (void)p_willEnterForeground:(id)a0; - (void)performBlockAfterNextLayout:(id /* block */)a0; - (void)performBlockNextFrame:(id /* block */)a0; - (void)popThreadedLayoutAndRenderDisabled; - (void)presentErrors:(id)a0 withLocalizedDescription:(id)a1 completionHandler:(id /* block */)a2; - (id)provideDynamicGuides; - (id)provideUserDefinedGuides; - (void)pushThreadedLayoutAndRenderDisabled; - (id)queueForDrawingTilingLayerInBackground:(id)a0; - (void)recreateAllLayoutsAndReps; - (void)removeBackgroundRenderingObject:(id)a0; - (void)removeCommonObservers; - (void)removeDecorator:(id)a0; - (id)repForContainerLayer:(id)a0; - (id)repForInfo:(id)a0 createIfNeeded:(BOOL)a1; - (id)repForLayer:(id)a0; - (id)repForLayout:(id)a0; - (id)replaceImageController; - (id)repsForInfo:(id)a0; - (void)resumeEditing; - (void)reuseTextInputResponderFrom:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })scrollFocusRectForModel:(id)a0 withSelection:(id)a1; - (void)scrollRectToVisibleCenter:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 animated:(BOOL)a1 onlyScrollNecessaryAxes:(BOOL)a2; - (void)scrollRectToVisibleWithSelectionOutset:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 animated:(BOOL)a1; - (void)scrollToPrimarySelection; - (void)scrollToPrimarySelectionForEditor:(id)a0; - (void)scrollToSelection:(id)a0 onModel:(id)a1; - (void)scrollToSelection:(id)a0 onModel:(id)a1 scrollImmediately:(BOOL)a2; - (BOOL)selectionContainsOnlyInfosOnCanvas:(id)a0 model:(id)a1; - (void)setAnimation:(id)a0 forLayer:(id)a1 forKey:(id)a2; - (void)setAnimationFilterBlock:(id /* block */)a0; - (void)setAnimationUseRepFiltering:(BOOL)a0; - (void)setContentOffset:(struct CGPoint { double x0; double x1; })a0 clamp:(BOOL)a1 animated:(BOOL)a2; - (void)setContentOffset:(struct CGPoint { double x0; double x1; })a0 clamp:(BOOL)a1 animated:(BOOL)a2 completionBlock:(id /* block */)a3; - (void)setKeyboardSuppressedAndTextInputEditorIgnoresFirstResponderChanges:(BOOL)a0; - (void)setNeedsDisplayInRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 onLayer:(id)a1; - (void)setNeedsDisplayOnLayer:(id)a0; - (void)setShouldSuppressRendering:(BOOL)a0 animated:(BOOL)a1; - (void)setViewScale:(double)a0 andScrollViewFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 animated:(BOOL)a2; - (void)setViewScale:(double)a0 andScrollViewFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 maintainPosition:(BOOL)a2 animated:(BOOL)a3; - (void)setViewScale:(double)a0 contentOffset:(struct CGPoint { double x0; double x1; })a1 clampOffset:(BOOL)a2 animated:(BOOL)a3; - (void)setViewScale:(double)a0 contentOffset:(struct CGPoint { double x0; double x1; })a1 clampOffset:(BOOL)a2 animationDuration:(double)a3 completion:(id /* block */)a4; - (void)setViewScale:(double)a0 contentOffset:(struct CGPoint { double x0; double x1; })a1 clampOffset:(BOOL)a2 animationDuration:(double)a3 forceAnimation:(BOOL)a4 completion:(id /* block */)a5; - (BOOL)shouldBeginDrawingTilingLayerInBackground:(id)a0 returningToken:(id *)a1 andQueue:(id *)a2; - (BOOL)shouldDisplayCommentUIForInfo:(id)a0; - (BOOL)shouldEverShowPathHighlightOnInvisibleShapes; - (BOOL)shouldLayoutTilingLayer:(id)a0; - (BOOL)shouldResampleImages; - (BOOL)shouldShowOnRepHyperlinkUI; - (BOOL)shouldShowPathHighlightOnUnselectedInvisibleShapes; - (BOOL)shouldZoomOnSelectionChange; - (void)showOrHideComments:(id)a0; - (struct CGPoint { double x0; double x1; })smartZoomCenterForNoSelection; - (void)teardownBackgroundRendering; - (void)teardownCanvasEditor; - (struct CGImage { } *)textImageFromRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (void)toggleHyperlinkUIForRep:(id)a0; - (void)toggleShouldShowUserDefinedGuides; - (id)topLevelRepsForDragSelecting; - (id)topLevelZOrderedSiblingsOfInfos:(id)a0; - (id)unitFormatter; - (id)unitStringForAngle:(double)a0; - (id)unitStringForAngle:(double)a0 andLength:(double)a1; - (id)unitStringForNumber:(double)a0; - (id)unitStringForPoint:(struct CGPoint { double x0; double x1; })a0; - (id)unitStringForSize:(struct CGSize { double x0; double x1; })a0; - (void)unobscuredFrameDidChange; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })unobscuredFrameOfView:(id)a0; - (void)updateSelectionForTapAtPoint:(struct CGPoint { double x0; double x1; })a0 extendingSelection:(BOOL)a1; - (void)updateSelectionForTapOnSelectedRep:(id)a0; - (void)viewDidEndZooming; - (double)viewScaleForZoomToFitRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 outset:(BOOL)a1 fitWidthOnly:(BOOL)a2; - (id)viewWithTransferredLayers; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })visibleBoundsForTilingLayer:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })visibleScaledBoundsForClippingRepsOnCanvas:(id)a0; - (BOOL)wantsUpdatedScrollIndicatorInsets; - (void)zoomToCurrentSelection; - (BOOL)zoomToFitRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 outset:(BOOL)a1 fitWidthOnly:(BOOL)a2 centerHorizontally:(BOOL)a3 centerVertically:(BOOL)a4 animated:(BOOL)a5; - (void)zoomWithAnimationToUnscaledRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; @end