问题标签 [document-based]

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.

0 投票
2 回答
587 浏览

macos - 关闭 NSWindow 时防止保存提示

我有一个基于文档的 Cocoa 应用程序,它使用辅助NSWindow预览模式(shouldCloseDocument设置为NO)。

如果文档很脏(已编辑但未保存)并且我关闭了辅助文档NSWindow,则会出现“是否要保存对文档所做的更改”提示。

我怎样才能避免在二级上出现这个提示NSWindow

0 投票
2 回答
932 浏览

macos - 检查 NSDocument 是否是新的

你怎么知道aNSDocument是否是新的?

我目前正在使用fileURL != nil,但在文档中找不到任何地方可以证实这一点。

此外,在恢复的文档中fileURL返回nil(退出应用程序而不保存,然后再次打开应用程序后)。是否可以区分新文档和恢复的文档?

0 投票
1 回答
724 浏览

objective-c - Xcode with OpenGL:新窗口不会自动成为活动上下文

当我使用 NSOpenGLView 创建基于文档的 Xcode 项目时,我遇到了一个奇怪的问题。该应用程序适用于单个文档,响应鼠标点击。当您选择文件/新建打开第二个文档时,顶部会出现一个新的前窗口,但鼠标单击会发送到前一个(背景)对象。您可以移动新窗口,点击仍会发送到前一个对象。但是,如果您调整新窗口的大小或在前一个窗口中来回单击,则一切正常。所以问题似乎是新的(前)窗口没有成为活动上下文。你能提出一个解决方案吗?我已将 Xcode 4.4 代码 (44kb) 放在http://www.mccauslandcenter.sc.edu/CRNL/sw/GLdoc.zip

  1. 创建一个新的基于文档的应用程序
  2. 将 MyOpenGLView.m 和 MyOpenGLView.h 文件添加到项目中
  3. 对于 Targets/BuildPhases,将 OpenGL.framework 添加到“Link Binary With Libraries”
  4. 对于 Targets/BuildPhases,将 MyOpenGLView.m 添加到“Compile Sources”
  5. 在界面生成器中 a.) 选择 Document's Window 并在属性检查器中关闭“One shot” b.) 从对象库中添加一个 OpenGL 视图 c.) 使用身份检查器,将新创建的 NSOpenGLView 的类设置为 MyOpenGLView
  6. 运行项目

----开始我的OpenGLView.h

----START MyOpenGLView.m

0 投票
2 回答
1217 浏览

objective-c - 在基于文档的应用程序中打开无标题文件

我希望我的应用程序每次启动时都打开新的无标题文档。它在 10.6 中工作,但现在我升级到 10.8,当我用Command+关闭窗口W然后重新启动应用程序时,它不会打开任何窗口。

无论以前如何退出,如何在每次应用程序启动时打开一个新窗口?

我试图YES在没有运气的情况applicationShouldOpenUntitledFile:下返回applicationOpenUntitledFile:应用程序委托。

0 投票
1 回答
48 浏览

xcode - 打开文档会打开我的应用程序的旧版本

我有一个document based application. 如果我通过双击文件打开保存的文件,则打开我的程序的旧版本(我从系统中删除)而不是新版本。该应用程序是一个stand alone application.

我怎样才能避免这种情况?

0 投票
1 回答
101 浏览

objective-c - 延迟文件关闭

我有一个document based application,当应用程序关闭时,我需要在网络浏览器中加载一个 url。它工作正常,除了NSDocument可以加载此页面之前关闭。

我需要它等待200 ms然后关闭文档。

我找到了,NSTerminateLater但它是指应用程序,而不是文档。我怎样才能做到这一点?

这就是我现在所拥有的:

0 投票
0 回答
276 浏览

macos - Cocoa Core Data Document Based Application 底层或读/写文件类型

我正在为我们的一些移动应用程序编写数据编辑器工具。现在,我将其设置为基于文档的核心数据应用程序。我们希望将数据保存为纯 JSON 或 XML 以包含在应用程序中。不幸的是,在使用 NSPersistentDocument 时,我似乎无法弄清楚如何打开或编写 JSON/XML 文件。有没有一个好的方法可以做到这一点,或者我应该扔掉核心数据并将信息保存在内存中,并在用户告诉我时写入?

0 投票
2 回答
129 浏览

cocoa - 区分 Cocoa 应用程序中的新文档和恢复的文档

在我的项目中,我需要能够区分用户创建的文档和在应用程序启动时通过 restoreStateWithCoder 恢复的文档之间的区别,因为对于新文档需要做一些事情,而不是恢复的文档。我怎样才能做到这一点?

0 投票
1 回答
231 浏览

cocoa - 以编程方式显示基于文档的应用程序的版本弹出菜单

我们有一个用于基于文档的应用程序的自定义窗口和标题栏,我们希望通过文档标题旁边显示的标准披露按钮来支持版本控制。这是一个显示按钮的图像和单击它时的弹出菜单(来自 TextEdit):

抓取 TextEdit 版本的披露按钮和弹出菜单

有没有办法以编程方式显示自定义披露按钮的此版本弹出菜单?

此处出现了一个相关问题,但标准不同:

Cocoa - 添加菜单以支持版本?(就像在 TextEdit 中一样)

0 投票
1 回答
128 浏览

cocoa - 基于文档的应用程序上的可可表

我得到了一个对话框而不是工作表。当应用程序不基于文档时它可以工作。现在它不起作用。