Какао-Яблоко NSOpenPanel? - PullRequest
       13

Какао-Яблоко NSOpenPanel?

1 голос
/ 14 ноября 2011

Как мне сделать NSOpenPanel в Какао-Applescript? Есть ли хорошие уроки? Я знаком с Applescript, но не совсем с какао. Нужно ли nib для NSOpenPanel? Я делаю действие Automator. См. Мой предыдущий вопрос .

1 Ответ

1 голос
/ 15 ноября 2011

PDF-книга Шейна Стэнли AppleScriptObjC Explored - это то, что нужно для учебников AppleScriptObjC - почти все примеры от Apple находятся в существующей документации ObjC и должны быть преобразованы.

Есть всплывающая кнопка пути Automator, которую вы можете использовать в интерфейсе своего действия, но базовая открытая панель выглядит примерно так (ей не нужен собственный кончик):

set defaultDirectory to POSIX path of (path to desktop) -- a place to start

tell current application's NSOpenPanel's openPanel()
    setFloatingPanel_(true)
    setTitle_("Panel Test")
    setPrompt_("Choose") -- the button name
    setMessage_("Choose some stuff:")
    setDirectoryURL_(current application's NSURL's URLWithString_(defaultDirectory))

    setCanChooseFiles_(true)
    setCanChooseDirectories_(true)
    setShowsHiddenFiles_(false)
    setTreatsFilePackagesAsDirectories_(false)
    setAllowsMultipleSelection_(true)

    set theResult to it's runModal() as integer -- show the panel
    if theResult is current application's NSFileHandlingPanelCancelButton then quit -- cancel button
    set theFiles to URLs() as list --> a list of NSURLs
end tell

Обратите внимание, чтоесли вы используете редактор AppleScript, вы не можете запустить код AppleScriptObjC непосредственно из редактора, вам нужно запустить его в апплете Cocoa-AppleScript.Однако есть фоновое приложение ASObjC Runner (также от Стэнли), которое можно использовать из редактора.

...