我在基于文档的应用程序中启用了版本和自动保存,所以现在我可以在OSX 10.7中看到每个文档的版本浏览器(类似时间机器的界面)
+ (BOOL)autosavesInPlace{ return YES; }
Run Code Online (Sandbox Code Playgroud)
我有一个textview,并且在WWDC视频的一个会话107中建议,我想在进入版本浏览器时禁用文本输入等.所以我实现了NSWindowDelegate方法:
- (void)windowWillEnterVersionBrowser:(NSNotification *)notification{
[myTextView setEditable:NO];
}
- (void)windowWillExitVersionBrowser:(NSNotification *)notification{
[myTextView setEditable:YES];
}
Run Code Online (Sandbox Code Playgroud)
现在,myTextView在屏幕左侧的文档(当前文档)窗口中被禁用,但右侧的文档(过去的版本)仍然显示光标.
textView不可编辑,但光标显示.我也禁用其他东西并在上面的方法中重新启用它们,但是在上面的方法中编写代码似乎只影响当前的文档窗口/文档而不是过去的版本windows/document.
也许其他人有同样的问题?我怎样才能正常工作?:)
编辑:
我正在寻找会话107的WWDC示例代码,但文件夹是空的.我错过了什么或者没有这个会话的示例代码吗?
编辑2:
应用程序工具包发行说明(Lion)说windowForSheet在创建版本浏览器右侧的窗口时调用:
- (NSWindow *)windowForSheet{
CustomWindow *win = (CustomWindow *)[super windowForSheet];
[win setUserInteractionEnabled:![self isInViewingMode]]; //disable stuff here
return win;
}
Run Code Online (Sandbox Code Playgroud)
但是现在当窗口从版本浏览器返回时,用户交互仍然被禁用.:(
我刚尝试在Mac上打开XCode(10.7.1),它要求我在Mac OS X运行之前安装Java.
为什么XCode需要Java?
当我尝试安装MacPorts时,它抱怨'Xcode没有安装,或者安装了UNIX Development(10.5+)或命令行支持(10.4)取消选择.
我确实从Appstore安装了Xcode,所以我想我只需要安装这些额外的部件,但是如何?
我已经阅读了有关Stack Overflow的几个问题,但我认为答案必须过时,因为它们对我来说没有意义,我没有Xcode dmg我可以重新安装,而且我在/ Developer中看不到任何有用的东西或者Xcode本身的任何偏好.
我只想要Xcode用于使用Macports,所以我不熟悉它.
我第一次将自己的脚浸入Cocoa.
这是一个简单的问题.OS X Lion支持在终止并重新启动应用程序时恢复窗口状态.好的,好的和好的.
但对于基于文档的应用程序,相同的 Resume功能是否也可以管理文档关闭时的窗口状态保存,以及稍后重新打开但是没有退出应用程序?(换句话说,无论应用程序是否退出,它是否可以持久管理每个文件的状态?或者我是否必须通过将信息保存在文档的文件中来自行管理?)
例如,iWork '09应用程序会执行此类操作:如果您关闭已保存的文档并重新打开它,它将恢复窗口大小,位置和滚动条位置.我不知道它是否使用Lion的Resume本身.
但是,相比之下,OS X Lion的TextEdit在退出并重新启动时会恢复窗口,但是当您关闭文档并重新打开它时,它不会记住窗口状态.这让我怀疑在没有退出的情况下使用Resume可能无法自动执行(因为Pages可能会以其专有文件格式保持窗口状态,但TextEdit不会,因为它使用纯文本,RTF,HTML等文件).
我还没有访问WWDC 2011视频,OS X发行说明,OS X应用程序编程指南和NSWindowRestoration API文档都没有具体谈到这一点.
所以问题再次出现:在关闭并重新打开文档窗口后自动记住文档窗口的状态而不退出应用程序(如iWork那样)...... Lion的Restore还支持这个吗?
非常感谢!
我已经确认这只发生在Lion.我发现了一个似乎是一个需要将窗口聚焦两次的错误,以便Finder通过脚本桥或AppleScript返回正确的结果.仅当从桌面或其他空间打开文件夹时才会发生这种情况.
这是复制的方法:
打开AppleScript编辑器并运行以下脚本:
tell application "Finder"
return selection
end tell
Run Code Online (Sandbox Code Playgroud)该脚本将仅返回桌面上文件夹的路径,而不是查找器窗口中的选定文件.
如果重新聚焦窗口,或再次单击该文件,一切都按预期工作,脚本返回正确的路径.
这似乎是Lion中的一个错误.Snow Leopard 100%的时间都会返回正确的路径.
我尝试了以下方法但没有成功:
所有人似乎都有同样的问题.
我错过了一些明显的东西,或者这真的是狮子的问题?
任何人都可以为我提供一些如何使用Xcode在OS X Lion上编译OpenCV 2.3.1的详细指南吗?
我对此感到生气...我得到了源码,使用cmake创建Xcode模板并尝试构建它,但它失败了大约200个错误.
在此先感谢,Dom
解答我的回答帖子.
Mac似乎忽略了对主机文件的新更改.旧的更改工作没有问题.我花了4个多小时试图弄清楚这个.救命!
我在我的/ Sites文件夹中开发的每个站点都有文件夹.例如,几个文件夹命名为:
wp.dev
daf.dev
test.dev
Run Code Online (Sandbox Code Playgroud)
我运行MAMP,将Apache端口设置为80,将MySQL端口设置为3306(这样我就不必在浏览器中将端口添加到地址栏).
我编辑了我的/ private/etc/hosts文件,如下所示:
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
127.0.0.1 wp.dev
127.0.0.1 daf.dev
127.0.0.1 test.dev
fe80::1%lo0 localhost
Run Code Online (Sandbox Code Playgroud)
这是踢球者:wp.dev和daf.dev已经存在了一个多月.他们在我的浏览器中解决没有问题.我今天早上添加了test.dev.当我在浏览器中输入它时,它只搜索"test.dev"而不是解析域.
我可以ping任何上述域名,他们转到127.0.0.1,包括test.dev.
为了它的价值,我尝试了virtualhostsx同样的问题.我还运行dscacheutil --flushcache并在进行更改时重新启动MAMP.
我需要在一个新网站上开始开发,这让我发疯.
愚蠢的问题......几个月前我创造了一个虚拟世界,不记得它叫什么.我在哪里可以找到它?
谢谢!
我使用自制软件安装了Postgres 9.0.x,但由于缺少某些模块,我使用以下方法将其删除:
brew uninstall postgres
Run Code Online (Sandbox Code Playgroud)
并从http://www.enterprisedb.com/downloads/postgres-postgresql-downloads安装了Postgres 9.1.3 .
现在我遇到了一个问题 - 在pg_dump上有两个不同的版本 - 9.0.5和9.1.3和9.0.5是默认版本.
有没有办法将9.1.3版本设置为pg_dump的默认版本?
我正在测试我制作的应用程序,其中包括在打开时加载几个.png图像.图像在我的Mac(10.7.5)和我母亲(10.8.5)上正确显示; 然而,当我的妹妹在她的手上打开它时(10.9.5),图像不会加载.其他所有功能都完好无损.我应该注意到,在我的Mac和我的母亲身上,我安装了Python 3.4和应用程序使用的许多软件包,包括PIL软件包,而我姐姐没有这些软件包.该应用程序是使用以下命令构建的:
python3.4 setup.py py2app
Run Code Online (Sandbox Code Playgroud)
图像在代码中导入:
image = ImageTk.PhotoImage(file = "images/pic.png")
Run Code Online (Sandbox Code Playgroud)
py2app的安装文件如下:
from setuptools import setup
APP = ['myapp.py']
DATA_FILES = [('', ['images'])]
OPTIONS = {'iconfile': 'myapp.icns', 'packages': ['PIL']}
setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)
Run Code Online (Sandbox Code Playgroud)
我猜这是PIL的一个问题,它似乎并不想与py2app很好地配合.我认为它是PIL的原因是因为在运行命令构建我的应用程序后,我在终端中收到以下错误消息.
Modules not found (conditional imports):
* Image (/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/py2app/recipes/PIL/prescript.py)
Run Code Online (Sandbox Code Playgroud)
我会非常感谢任何建议或指示.
osx-lion ×10
macos ×7
xcode ×3
cocoa ×2
objective-c ×2
applescript ×1
hosts-file ×1
macports ×1
mamp ×1
opencv ×1
pg-dump ×1
pillow ×1
postgresql ×1
py2app ×1
python-2.7 ×1
python-3.x ×1
restore ×1
version ×1
virtualenv ×1