Cocoa テキスト エディターでタイプライター スクロールを実装しようとしています。スクロール ビューの垂直方向に挿入ポイントを中央に配置します。
NSClipView
この目的のために、メソッドを提供するためにサブクラス化しましscrollToPointWithoutConstraint
た。このメソッドは、 を呼び出さずに指定されたポイントまでドキュメントをスクロールしますconstrainScrollPoint
。短いドキュメントの場合、ドキュメントの境界を超えてスクロールしない限り、挿入ポイントを中央に配置できないため、これが必要です。
これまでのところ、これはかなり簡単なようで、私が望むことを行います。スクロールバーを使用してスクロールしようとすると、問題が発生します。スクロール ビューの一部にドキュメントの境界外の領域が含まれるように、ドキュメントの最後までスクロールした場合、少しずつ上にスクロールしようとすると、スクロール ビューがジャンプし、すぐにドキュメントの実際の境界に固定されます。
メソッドをサブクラス化NSTextView
してオーバーライドする必要があるかもしれないと考えています。adjustScroll
これが私の実際の質問の始まりです。にproposedVisibleRect
渡される はadjustScroll
、ドキュメントの実際の境界内に収まるように寸法が調整されています。proposedVisibleRect
呼び出される前に値を変更できる方法はありadjustScroll
ますか? あるいは、私はこれについて完全に間違っていますか?この時点で、どんな提案も大歓迎です。