代码之家  ›  专栏  ›  技术社区  ›  Brian Postow

mac Firefox插件示例?

  •  0
  • Brian Postow  · 技术社区  · 15 年前

    我正在尝试为mac重新编写一个旧的图像查看插件。旧版本使用QuickDraw(我说它很旧)和资源(真的很旧),所以它在Firefox 3.6中不起作用(这就是我重新编写它的原因)

    我知道一些目标C,所以我想我会用新的尖牙Mac例程和nibs等来重新编写这篇文章。但是,我不知道如何开始。我有mozilla源代码附带的BasicPlugin示例,所以我知道如何创建带有入口点的插件等。但是,我不知道如何创建nib,以及如何将Obj-C与入口点接口等。

    有没有人知道mac的一个比basiclugin.bundle更高级的示例?(最好足够简单,我可以看一看就明白了……)

    谢谢。

    1 回复  |  直到 12 年前
        1
  •  2
  •   Community CDub    8 年前

    可悲的是我真的不知道有什么好处 “中间” 例子。然而,集成Obj-C并不是那么困难。因此,下面是对需要做什么的简短概述。

    你可以在同一个项目中使用Obj-C和C/C++源,它只需要在一定程度上保持分离。例如,可以通过让源文件与入口点和其他NPAPI接口保持纯C或C++文件,例如向前调用从插件到那里。
    Opaque pointers 帮助保持一个干净的分离,参见例如。 here .

    插件的主要更改包括切换到不同的图形和事件模型。这些都必须通过谈判 NPP_New() , here 是绘图模型的示例。当使用Cocoa并支持64位环境时,需要使用 Cocoa event model .

    要绘制UI元素,您应该能够使用 NSGraphicsContext from the CGContextRef 然后画一个 NSView in the context . 另请参见中提供的详细信息 this post 以及后续行动。

    推荐文章