03/11 NSTextViewからのテキストデータ取得、テキスト設定サンプル
NSTextViewへのデータ設定、データ取得を行うAppleScriptObjCのサンプルです。
AppleScript Studioで作ってあったOpenSSLのユーティリティをAppleScriptObjCで作り直そうとしたときに、どうも一定文字以上のデータのエンコード時に文字化けが発生。その問題検証のために作成したサンプルです。
実際に試してみて、NSTextViewからの値の取得/設定時にはとくに問題がないことがはっきりしました。やはり、実際に組んで試してみないと。

→ プロジェクトのダウンロード(Xcode 4.1 on Mac OS X 10.6.8で検証)
| AppleScriptObjCファイル名:textview1AppDelegate.applescript |
| – – textview1AppDelegate.applescript – textview1 – – Created by 長野谷 隆昌 on 12/01/13. – Copyright 2012 Piyomaru Software. All rights reserved. – script textview1AppDelegate property parent : class “NSObject” property aTV : missing value property bTV : missing value on applicationWillFinishLaunching_(aNotification) – Insert code here to initialize your application before any files are opened end applicationWillFinishLaunching_ on applicationShouldTerminate_(sender) – Insert code here to do any housekeeping before your application quits return current application’s NSTerminateNow end applicationShouldTerminate_ on clicked_(sender) set textStorage to (my aTV’s textStorage()) set theText to textStorage’s |string|() display dialog (theText as string) end clicked_ on clicked2_(sender) set textStorage to (my aTV’s textStorage()) set theText to textStorage’s |string|() set theText to theText as Unicode text my bTV’s setString_(theText) end clicked2_ on clicked3_(sender) set textStorage to (my aTV’s textStorage()) set theTextA to textStorage’s |string|() set theTextA to theTextA as Unicode text set textStorage to (my bTV’s textStorage()) set theTextB to textStorage’s |string|() set theTextB to theTextB as Unicode text if theTextA = theTextB then display dialog “左右のテキスト内容はイコールです” else display dialog “左右のテキスト内容は合っていません” end if end clicked3_ end script |
