【发布时间】:2010-06-09 21:54:37
【问题描述】:
所以我们有一个非常古老的项目,全是 Carbon。我们需要修改打开和保存文件的方式,并且我们使用的对话框代码是旧的,所以我想在 Cocoa 中创建这个新的。
如何创建一个可以从 Carbon 调用的 Cocoa 类?
我将使用哪些 Cocoa 例程来创建打开和保存对话框并将它们呈现给用户等?
【问题讨论】:
标签: cocoa xcode macos macos-carbon
所以我们有一个非常古老的项目,全是 Carbon。我们需要修改打开和保存文件的方式,并且我们使用的对话框代码是旧的,所以我想在 Cocoa 中创建这个新的。
如何创建一个可以从 Carbon 调用的 Cocoa 类?
我将使用哪些 Cocoa 例程来创建打开和保存对话框并将它们呈现给用户等?
【问题讨论】:
标签: cocoa xcode macos macos-carbon
我认为这是不可能的,我想说的太多了,但 Apple 发布了 Carbon-Cocoa Integration Guide [PDF],它可能会给你所需的答案。
但是,我认为无论如何您都应该考虑将整个 UI 移植到 Cocoa。我不知道 Carbon 是否被正式弃用,但对它的支持肯定不会在未来的操作系统版本中得到改善。
【讨论】:
首先您应该考虑您的打开和保存对话框应该是工作表还是模式对话框。如果它们应该是表,那么您需要坚持使用 Carbon NavCreate... 功能,因为您不能在 Carbon 窗口上放置 Cocoa 表。如果您对模态对话框感到满意,那么您可能可以将 NSOpenPanel 和 NSSavePanel 与 runModal 方法一起使用。
【讨论】: