Cocoa / MacRuby:如何编写一个接受自定义项目的工具栏?

时间:2011-06-28 12:53:06

标签: ruby cocoa delegates macruby

我正在MacRuby迈出第一步。有谁知道如何将自定义工具栏添加到我的Cocoa / MacRuby应用程序中,该应用程序将接受“常规”项目,例如:切换视图(参见http://www.stevestreeting.com/wp-content/uploads/2011/06/SelectableToolbarDemo001.png)。

我已经阅读了一些教程,我想我必须为工具栏创建一个自定义委托,然后通过Outlets窗口连接它,但myCustomDelegate.rb如何看起来像?

1 个答案:

答案 0 :(得分:1)

这里有一个很好的教程:http://www.mere-mortal-software.com/blog/details.php?d=2007-03-14

它针对首选项窗口,但当然你可以在任何地方使用窗口类。

我没有费心将窗口超类移植到Macruby,我只是按原样使用它。然后我使用macruby编写子类,例如:

class MopenPrefsWindowController < DBPrefsWindowController
  attr_accessor :generalPrefsView
  attr_accessor :openingPrefsView
  attr_accessor :advancedPrefsView
  attr_accessor :appearancePrefsView  

  def setupToolbar
    self.addView(generalPrefsView, label:"General", image:NSImage.imageNamed(NSImageNamePreferencesGeneral))
    self.addView(openingPrefsView, label:"Opening")
    self.addView(advancedPrefsView, label:"Advanced", image:NSImage.imageNamed(NSImageNameAdvanced))
    self.addView(appearancePrefsView, label:"Appearance")
  end
end

有一天可能导致我将窗口类移植到macruby的一件事是让它能够在所有窗格上显示一个底部。