タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

JavaScriptとxpcomとjavascriptに関するarikuiのブックマーク (4)

  • JavaScript で sleep (nsIThread 版) - サバニFRP

    chaika のスレッド表示の負荷をおさえる実験で使っている方法で、元ソースは Mozmill 。 副作用がありそうでまだ試験中だけど、Piro さんが JavaScriptでsleepしたい、を実現する方法(require JavaScript 1.7) で似たようなことをしていたのでメモとして紹介。 function sleep(aWait) { var timer = { timeup: false }; var interval = window.setInterval(function(){ timer.timeup = true; }, aWait); var thread = Cc["@mozilla.org/thread-manager;1"].getService().mainThread; while(!timer.timeup){ thread.processNext

  • JavaScriptでXPCOMを作成する - FAX

    JavaScript 実際に拡張のなかに組み込んでないから間違ってるかも。 seamonkey/xpcom/sample/nsSample.jsDev : Extending the Chrome Protocol - MozillaZine Knowledge Base JavaScriptだけでXPCOMを作るのは、こんなコードになるみたい。これを適当な名前をつけて、拡張の下のcomponentsというディレクトリに保存する。登録させるためには、プロファイルフォルダのcompreg.datとxpti.datを削除してXPCOMのキャッシュを一度クリアする必要があるかも。 var count = 0; function NSGetModule(compMgr, fileSpec) { return { CID : Components.ID('{f39ef159-b8d5-40e4-a

  • JavaScriptでXPCOMを作る: Days on the Moon

    FirefoxのUIはXULとJavaScriptで構成されていますが、JavaScriptの組み込みオブジェクトだけではファイル操作やウィンドウ操作などができません。そこで登場するのがXPCOM、これを用いることでOSに絡んだ操作やRDFの操作などが行えるようになります。 Firefoxに付随するXPCOMコンポーネントの多くはC++でかかれ、プラットフォーム別にコンパイル作業などが必要なのですが、XPCOMはJavaScriptを用いて作ることもでき、これならOSにあわせてコンパイルする必要はありません。そこでここでは実際にJavaScriptでXPCOMを作ってみることにします。 今回作成するXPCOMコンポーネント(nntPerson)は人物をあらわすもので、年齢を示すageプロパティと年齢を言うsayメソッドを持つものとします。また、以下ではWindowsで作成することを前提とし

  • XPCOM コンポーネントの置換: Days on the Moon

    Firefox Developers Conference Summer 2007 での発表の補足も兼ねて、実際に既存の XPCOM コンポーネントを自作のものに置き換える手順を説明していきたいと思います。ちょうど Mozilla でプログラミング (XUL) スレッドで about:blank を置き換える話が出ていたので、それを題材にとってみましょう。 Firefox で about:foo を表示するとき、内部的にはコントラクト ID が "@mozilla.org/network/protocol/about;1?what=foo" である XPCOM コンポーネントが作成されます。このコンポーネントは nsIAboutModule インターフェースを実装している必要があり、その newChannel メソッドで得られたチャンネルの内容がブラウザに表示されます。チャンネルというのは

  • 1