问题标签 [macruby]

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 投票
1 回答
362 浏览

xcode - MacRuby & Interface Builder 属性

我需要一些帮助来深入了解 MacRuby 和 XCode,尤其是我可以访问各种库组件属性/方法的部分。我想我需要某种参考。

让我再澄清一下。如果我将库中的组件(例如 Textview)添加到 Interface builder 中的表单,我可以通过我的 NSObject(链接到我的控制器)与它进行交互。使用 attr_accessor 和实例变量,我可以使用 getter 和 setter 获取数据,例如

或者

但是,我希望能够设置 imageview 的属性(例如更改图像的来源)或 webkit 视图的 url。有人可以为我指出正确的方向以获取反映 MacRuby 的参考吗?

我找到了类似的主题,但答案并不那么令人满意。主要是因为 MacRuby 书的未完成状态,我没有找到我的问题的答案。

我希望你能帮帮我!谢谢,

0 投票
3 回答
3769 浏览

objective-c - Grand Central Dispatch:用于控制对数据结构的访问的队列与信号量?

我正在使用 Macruby 进行此操作,但我认为这在这里并不重要。

我有一个将其状态存储在字典数据结构中的模型。我希望并发操作偶尔更新这个数据结构。在我看来,GCD 提供了一些可能的解决方案,包括这两个:

  • 将访问数据结构的任何代码包装在发送到某个串行队列的块中
  • 使用 GCD 信号量,客户端代码在访问结构时根据需要发送等待/信号调用

当第一个解决方案中的队列被同步调用时,它看起来几乎等同于信号量解决方案。这些解决方案中的任何一个是否具有我所缺少的明显优势?我错过了更好的选择吗?

另外:用 GCD 实现读写(共享独占)锁会很简单吗?

0 投票
1 回答
264 浏览

cocoa - 如何使用 OS X 的 Accessibility API 为我的应用程序编写验收测试?

我正在用 Cocoa 编写一个 GUI 应用程序。我想使用 Cucumber 编写验收测试,以不断验证应用程序的功能是否有效。我已经在 MacRuby 中编写了应用程序。

我可以使用 Accessibility API 来点击东西并拖动东西吗?我在哪里可以读到如何做这些事情?我发现 Apple 的网站在这个话题上相对沉默。

0 投票
1 回答
478 浏览

javascript - 使用 windowScriptObject 和 WebKit 通过 JavaScript 调用 MacRuby

我有一个新的 MacRuby 应用程序。我正在尝试从应用程序的 webView 中加载的 JavaScript 调用 MacRuby 方法。

JavaScript 调用 Objective-C 方法教程展示了如何向 webScriptObject 添加一个键,该键的值是一个 Objective-C 对象。因此,您可以从 JavaScript 调用 Obj-C 方法。

不幸的是,这不适用于 MacRuby 类/方法。下面是我的 WebView 的 loadDelegate 的简化版本:

当 webScriptObject 可用时,我向它添加两个键:ObjCInstance 和 MacRubyInstance。

下面是 ObjC 类的实现:

这就是 Ruby 中应该是相同的东西:

唯一的问题是 Objective-C 实现工作正常。在 JS 方面,您可以调用:

它返回字符串“works”。

但是 MacRuby 的实现失败了。你打电话时:

你得到:

表达式 'window.MacRubyInstance.nameAtIndex_' [undefined] 的结果不是函数

和方法永远不会在 MacRuby 实现上被调用webScriptNameForSelectorisSelectorExcludedFromWebScript我认为这就是问题所在,但我不知道为什么他们没有接到电话。

任何帮助将不胜感激。

0 投票
1 回答
826 浏览

ruby - 在 Mac OS X 上使用 Ruby,如何以编程方式在屏幕上单击——以及鼠标移动、鼠标向下和鼠标向上?

最好的方法是什么?ffi、RubyCocoa 或 MacRuby 能做到吗 ?

似乎可以使用CGEventCreateMouseEvent或(已弃用)。CGPostMouseEvent

请举一个工作的例子。谢谢。

更新:此问题的标题已更新...

0 投票
1 回答
354 浏览

ruby - 在 NSMenuItem 对象上调用 setTitle 方法不会更改显示的标题,而是更改属性

使用 MacRuby 和 XCode,我希望能够更改应用程序菜单中项目的标题。

在我的简化示例中,我有一个带有按钮和标签的窗口,以及一个带有菜单项的菜单。

我创建了以下类并将@my_label 链接到标签,@my_menu 链接到菜单项,并将按钮单击链接到 button_clicked 方法。当您单击按钮时,标签的文本会更新为显示“有人按下按钮”,但菜单的实际显示标题并没有改变。

这似乎表明该title 属性正在更新,但并未显示更改。

我查看了 NSMenuItem 的文档,但看不到任何明显的错误。但是我对此很陌生,所以希望我只是缺少一些简单的东西。

如果有任何区别,我将 MacRuby 0.10 与 XCode 4 一起使用。

保罗

0 投票
1 回答
125 浏览

ruby - 如何为 MacRuby 运行补丁

我在尝试安装与 llvm 相关的 MacRuby 时遇到错误,并找到了针对特定问题的补丁,但不知道如何应用补丁。

错误是

我发现的补丁是 Could not compile with LLVM 2.8 in r5276。

现在我有了补丁文件,我应该运行什么来应用它?

0 投票
1 回答
199 浏览

xcode4 - 默认的基于 NSDocument 的 MacRuby 应用程序在 XCode 4 下被破坏

我正在使用 MacRuby 0.10 和 XCode 4,在其中创建了一个默认的基于 NSDocument 的应用程序。但是,在构建和运行应用程序时,不会显示任何窗口,并且通常的菜单命令在很大程度上被禁用。

创建常规的基于 Cocoa 的应用程序时,主应用程序窗口显示得很好。

有谁知道修复是什么?

担;

0 投票
1 回答
444 浏览

debugging - 在 Xcode 中使用 MacRuby 调试器?

在 Xcode 中开发 MacRuby 应用程序时,是否可以使用 MacRuby 调试器 macrubyd?

据我所知,即使从终端也不能这样做。我曾考虑过笨拙的工作,但我想在花时间之前仔细检查一下情况。

使用 MacRuby 0.10 和 Xcode4。

0 投票
1 回答
457 浏览

macos - 使用 macruby,如何为 Core Animation 事务设置完成块?

我正在使用 MacRuby 进行核心动画编程。我已经尝试了所有我能想到的并进行了全面搜索(也许它无法在“纯”macruby 中完成)但我不知道如何将 MacRuby 代码块指定为要调用的完成块当动画事务完成时。我知道还有其他方法可以做我想做的事,但这对我来说似乎是最干净的,也是 Cocoa 中事情的发展方式。无论如何,这就是我所拥有的:

如果没有“setCompletionBlock”行,动画运行良好。此 setter 方法的参数定义(在 Objective-C 中)为:

并被描述为:

“当该事务组的动画>完成时调用的块对象。块对象不带参数也不返回值。”

我尝试了不同的东西(但我现在只是猜测):

我走远了吗?我是否必须制作某种 Objective-C 包装器才能做到这一点?还是做不到?

提前致谢