問題タブ [nspasteboard]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cocoa - プロキシオブジェクトなしで NSArrayController から選択したオブジェクトを取得する方法は?
NSTableView
に裏打ちされた複数のオブジェクトのコピーと貼り付けを実装しようとしていNSArrayController
ます。私のcopy:
方法は次のようになります。
コピーを実行しようとすると、コントローラーの選択にアクセスするとエラーが発生します。これは、プロキシ オブジェクトが返されるためです。
実際に選択されたオブジェクトを取得するにはどうすればよいですか?
objective-c - 一般的なペーストボードに入れたアイテムを別の Cocoa アプリがいつペーストしたかを知る方法
Mac OS X アプリ (Cocoa) で、アイテムを一般的なペーストボードにコピーしていますNSPasteboard.generalPasteboard()
。このアイテムは、プロトコルを実装するオブジェクトを使用してNSPasteboardItemDataProvider
、ユーザーが別のアプリを使用して貼り付けたときにデータを提供します。
宛先アプリによって選択されたタイプに応じて、一時的な作業 (一時ファイルへのファイルの書き込みなど) を実行できます。
この操作がいつ完了またはキャンセルされたかを検出する方法はありますか?
例として、コピー/貼り付け操作のドラッグに同じデータ プロバイダーを使用します。NSDraggingSource
プロトコルを採用
- draggingSession:endedAtPoint:operation:
して、いつクリーニングを行うべきかを知る方法を実装します。
macos - NSPasteboardItemDataProvider を使用して NSDraggingSession でメイン スレッドをブロックしないようにする
Mac OS X アプリ (Cocoa) で、NSDraggingSession
. はNSDraggingItem
、 protocol を実装するオブジェクトを使用してNSPasteboardItemDataProvider
、ユーザーがデータをドロップしたときにデータを提供します。
画像を扱っているので、関連するタイプはNSPasteboardTypePNG
、kPasteboardTypeFileURLPromise
、kUTTypeFileURL
、com.adobe.photoshop-image
およびpublic.svg-image
です。これらの画像は遠隔地にあるため、ペーストボードに提供する前に、インターネットからダウンロードする必要があります。
- pasteboard(pasteboard:item:provideDataForType:)
次のような方法でメソッドを実装します。
要求されたタイプが の場合、
kPasteboardTypeFileURLPromise
貼り付け場所を取得し、将来ファイルが書き込まれる予定の場所を含む URL 文字列をペーストボードに作成して設定します。要求されたタイプが の場合、
kUTTypeFileURL
ファイルをダウンロードし、一時的な場所を指定して、ダウンロードしたファイルをその場所に書き込みます。次に、場所の URL 文字列をペーストボードに設定します。要求されたタイプが他のタイプの場合、ファイルをダウンロード
NSData
してペーストボードにプレーンを設定します。
これらの操作はすべてメイン スレッドで実行されるため、解消したい遅延が発生します。
これらの操作をバックグラウンド スレッドで実行し、メイン スレッドに戻ってペーストボードに最終データを設定しようとしましたが、メソッドが前に終了するため、これは機能しません。
誰もそれを達成する方法を知っていますか?
macos - Macアプリでショートカット(Command + V)で貼り付けイベントを観察する方法
私のMacアプリでは、ペーストボードからのペーストのショートカットを観察する必要があり、何かをログに記録します。
これは可能ですか?
手がかりをありがとう。
excel - NSPasteboard にデータを書き込み、列と行で分割して Excel に貼り付けます
SwiftによるNSPasteboardの利用について。NSTableView データをコピーし、Excel 形式に合わせて行と列で分割して Excel に貼り付ける OS X プログラムを作成したいと考えています。現在のコード:
NSPasteboard の NSPasteBoardWriting データを調整して、ASCII または ??? を挿入する方法がわかりません。
copy - 選択したテキストを Swift でコピーする
OS X でポップオーバー メニュー バー アプリを作成しています。
目標は、現在アクティブなアプリケーション (ポップオーバーではない) の選択されたテキストをアプリにコピーして、文字列として使用できるようにすることです。
cocoa - RTF/RTFDでフォントを変更するNSPasteboard
画像とテキストを貼り付けるユーティリティに取り組んでいます。これまでのところ、これを行うための最良の方法はNSPasteboard
、画像とテキストを使用して RTFD データ ストリームにカプセル化することでした。私が抱えている問題は、コピーしたコードをドキュメントに貼り付けるたびに、フォント属性がない (確認済み) にもかかわらず、フォントが「Helvetica サイズ 12」に変更されることです。フォントを変更せずにテキストと画像を強制的に貼り付けることはできますか?
macos - AMWorkflowView への Automator アクションのドラッグ アンド ドロップ
2010 年に誰かがバグを報告しました: http://www.openradar.me/7582817
実際、自動化アクションを Finder から editableAMWorkflowView
にドラッグ アンド ドロップすると、アクションは追加されませんが、新しい「指定されたファインダー項目を取得する」アクションが追加されます。
NSTableView
テーブルビューから他のビューにドラッグできるいくつかのアクションのリストがあります。その右側にはAMWorkflowView
、ドラッグ先となる が表示されます。ここでも、ドラッグされたアクション自体の代わりに「指定されたファインダー項目を取得する」アクションが追加されることを除いて、すべてが実装され、正常に動作します。
AMWorkflowView's
-registeredDraggedtypes
このリストの出力を印刷します。
["ApertureImageDataPboardType"、"CalUUIDPasteboardType"、"AlbumDataListPboardType"、"CorePasteboardFlavorType 0x6974756E"、"ABGroupsUIDsPboardType"、"CorePasteboardFlavorType 0x4F69646E"、"NSFilenamesPboardType"、"AutomatorActions"、"com.apple.Automator.RunScript.source"、"Apple URLペーストボード タイプ"、"com.apple.mail.PasteboardTypeAutomator"、"ApertureFolderDataPboardType"、"NSStringPboardType"、"CorePasteboardFlavorType 0x4870666C"、"AutomatorVariables"、"ImageDataListPboardType"、"アクション エラー"、"ABPeopleUIDsPboardType"]
「AutomatorActions」pboard タイプが関連するもののようですが、ドキュメントが不足しているため、アプリを機能させる方法を理解できませんでした。これに関する有用な情報はありますか?Apple の Automator ドキュメントで意味のあるものを見つけることができませんでした... をNSPasteBoard
アーカイブして のデータを設定しても機能AMBundleAction
しNSKeyedArchiver
ませんでした。
swift - フォルダー/ディレクトリ項目を NSOutlineView から Finder や Xcode などのアプリにドラッグするにはどうすればよいですか?
Apple のこの例のようなディスク (ファイル システム) 階層を示すアウトライン ビュー テーブルを作成しました。
ここで、ファイル/フォルダーをアウトライン ビューから、Finder、Xcode、iTunes などのドロップを受け入れる他のアプリケーションにドラッグできるようにしたいと考えています。これらは、NSOu のデータ ソースに実装している機能です。
現在、コンソールでこのエラーが発生しています
最後に、これは私が持っているもののスクリーンショットです - ファイルシステムを示す NSOutlineView
xcode - 一般的な NSPasteboard の完全なコンテンツをコピーします
一般的な NSPasteboardの完全なコンテンツを、指定された名前のペーストボードにコピーする必要があります。私はこのコードを試しました:
このコードを使用して確認しています。
そこで、IWork Pages を使用してテストを行ったところ、テキストと属性付きテキストで動作しました。しかし、テキストと画像で実行しようとすると、プログラムはテキストをコピーして貼り付けるだけです。その上、画像だけを使って実行しようとしましたが、うまくいきました。私のコードをあらゆる種類のデータで使用する方法を教えてください。ありがとう。