ogre.rb 0.1-i686-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +79 -0
 - data/Rakefile +288 -0
 - data/doc_src/ogre.rb +246 -0
 - data/doc_src/ois.rb +67 -0
 - data/lib/application.rb +146 -0
 - data/lib/application_frame_listener.rb +302 -0
 - data/lib/application_loading_bar.rb +115 -0
 - data/lib/constants.rb +51 -0
 - data/lib/method_fixes.rb +42 -0
 - data/lib/ogre.so +0 -0
 - data/lib/ruby_ois.so +0 -0
 - data/ogre.rb +25 -0
 - data/platform.rb +23 -0
 - data/samples/Ogre.log +261 -0
 - data/samples/bsp.rb +76 -0
 - data/samples/cg.dll +0 -0
 - data/samples/grass.rb +325 -0
 - data/samples/js3250.dll +0 -0
 - data/samples/lighting.rb +138 -0
 - data/samples/media/materials/programs/Grass.cg +30 -0
 - data/samples/media/materials/programs/OffsetMapping.cg +97 -0
 - data/samples/media/materials/programs/OffsetMapping.hlsl +135 -0
 - data/samples/media/materials/programs/OffsetMappingFp.glsl +69 -0
 - data/samples/media/materials/programs/OffsetMappingVp.glsl +54 -0
 - data/samples/media/materials/programs/OffsetMapping_specular.asm +44 -0
 - data/samples/media/materials/scripts/CloudySky.material +17 -0
 - data/samples/media/materials/scripts/CubeMapping.material +34 -0
 - data/samples/media/materials/scripts/Flare.material +17 -0
 - data/samples/media/materials/scripts/Grass.material +63 -0
 - data/samples/media/materials/scripts/Knot.material +14 -0
 - data/samples/media/materials/scripts/MorningSkyBox.material +17 -0
 - data/samples/media/materials/scripts/Offset.material +124 -0
 - data/samples/media/materials/scripts/Ogre.material +119 -0
 - data/samples/media/materials/scripts/RZR-002.material +15 -0
 - data/samples/media/materials/scripts/Razor.material +14 -0
 - data/samples/media/materials/scripts/Ribbon.material +19 -0
 - data/samples/media/materials/scripts/RustySteel.material +14 -0
 - data/samples/media/materials/scripts/SpaceSkyBox.material +17 -0
 - data/samples/media/materials/scripts/SpaceSkyPlane.material +17 -0
 - data/samples/media/materials/scripts/TextureEffects.material +15 -0
 - data/samples/media/materials/scripts/dragon.material +42 -0
 - data/samples/media/materials/scripts/smoke.material +18 -0
 - data/samples/media/materials/textures/GreenSkin.jpg +0 -0
 - data/samples/media/materials/textures/MtlPlat2.jpg +0 -0
 - data/samples/media/materials/textures/RZR-002.png +0 -0
 - data/samples/media/materials/textures/RustedMetal.jpg +0 -0
 - data/samples/media/materials/textures/RustySteel.jpg +0 -0
 - data/samples/media/materials/textures/Water02.jpg +0 -0
 - data/samples/media/materials/textures/WeirdEye.png +0 -0
 - data/samples/media/materials/textures/clouds.jpg +0 -0
 - data/samples/media/materials/textures/cursor.png +0 -0
 - data/samples/media/materials/textures/dirt01.jpg +0 -0
 - data/samples/media/materials/textures/flare.png +0 -0
 - data/samples/media/materials/textures/gras_02.png +0 -0
 - data/samples/media/materials/textures/grass_1024.jpg +0 -0
 - data/samples/media/materials/textures/ogreborder.png +0 -0
 - data/samples/media/materials/textures/ogreborderUp.png +0 -0
 - data/samples/media/materials/textures/ribbonband.png +0 -0
 - data/samples/media/materials/textures/rockwall.tga +0 -0
 - data/samples/media/materials/textures/rockwall_NH.tga +0 -0
 - data/samples/media/materials/textures/smoke.png +0 -0
 - data/samples/media/materials/textures/smokecolors.png +0 -0
 - data/samples/media/materials/textures/spacesky.jpg +0 -0
 - data/samples/media/materials/textures/spheremap.png +0 -0
 - data/samples/media/materials/textures/texmap2.jpg +0 -0
 - data/samples/media/models/RZR-002.mesh +0 -0
 - data/samples/media/models/geosphere4500.mesh +0 -0
 - data/samples/media/models/geosphere8000.mesh +0 -0
 - data/samples/media/models/knot.mesh +0 -0
 - data/samples/media/models/ogrehead.mesh +0 -0
 - data/samples/media/models/razor.mesh +0 -0
 - data/samples/media/models/sphere.mesh +0 -0
 - data/samples/media/overlays/CubeMapping.overlay +139 -0
 - data/samples/media/packs/OgreCore.zip +0 -0
 - data/samples/media/packs/chiropteraDM.pk3 +0 -0
 - data/samples/media/packs/chiropteraDM.txt +99 -0
 - data/samples/media/packs/cubemap.zip +0 -0
 - data/samples/media/packs/cubemapsJS.zip +0 -0
 - data/samples/media/packs/dragon.zip +0 -0
 - data/samples/media/packs/skybox.zip +0 -0
 - data/samples/media/particles/smoke.particle +43 -0
 - data/samples/media.cfg +22 -0
 - data/samples/navi/Media/NaviDemo.material +60 -0
 - data/samples/navi/Media/OgreCore.zip +0 -0
 - data/samples/navi/Media/cerulean.jpg +0 -0
 - data/samples/navi/Media/clouds.jpg +0 -0
 - data/samples/navi/Media/controlsNaviMask.png +0 -0
 - data/samples/navi/Media/grass.jpg +0 -0
 - data/samples/navi/Media/knot.mesh +0 -0
 - data/samples/navi/Media/testNaviMask.png +0 -0
 - data/samples/navi/NaviLocal/Navi.js +136 -0
 - data/samples/navi/NaviLocal/buttonBg.jpg +0 -0
 - data/samples/navi/NaviLocal/controls.html +303 -0
 - data/samples/navi/NaviLocal/knobBg.jpg +0 -0
 - data/samples/navi/NaviLocal/moo.dropdownmenu.js +87 -0
 - data/samples/navi/NaviLocal/mootools.v1.1.js +6964 -0
 - data/samples/navi/NaviLocal/naviLogo.html +32 -0
 - data/samples/navi/NaviLocal/naviLogo.png +0 -0
 - data/samples/navi/NaviLocal/pageBg.jpg +0 -0
 - data/samples/navi/NaviLocal/sliderBg.jpg +0 -0
 - data/samples/navi/NaviLocal/test.html +5 -0
 - data/samples/navi/NaviLocal/welcome.html +36 -0
 - data/samples/navi/NaviLocal/welcome.png +0 -0
 - data/samples/navi/chrome/chromelist.txt +597 -0
 - data/samples/navi/chrome/classic.jar +0 -0
 - data/samples/navi/chrome/classic.manifest +4 -0
 - data/samples/navi/chrome/comm.jar +0 -0
 - data/samples/navi/chrome/comm.manifest +2 -0
 - data/samples/navi/chrome/en-US.jar +0 -0
 - data/samples/navi/chrome/en-US.manifest +9 -0
 - data/samples/navi/chrome/toolkit.jar +0 -0
 - data/samples/navi/chrome/toolkit.manifest +6 -0
 - data/samples/navi/components/FeedProcessor.js +1825 -0
 - data/samples/navi/components/alerts.xpt +0 -0
 - data/samples/navi/components/appshell.xpt +0 -0
 - data/samples/navi/components/appstartup.xpt +0 -0
 - data/samples/navi/components/auth.dll +0 -0
 - data/samples/navi/components/autocomplete.xpt +0 -0
 - data/samples/navi/components/autoconfig.dll +0 -0
 - data/samples/navi/components/autoconfig.xpt +0 -0
 - data/samples/navi/components/caps.xpt +0 -0
 - data/samples/navi/components/chardet.xpt +0 -0
 - data/samples/navi/components/chrome.xpt +0 -0
 - data/samples/navi/components/commandhandler.xpt +0 -0
 - data/samples/navi/components/commandlines.xpt +0 -0
 - data/samples/navi/components/composer.xpt +0 -0
 - data/samples/navi/components/compreg.dat +1474 -0
 - data/samples/navi/components/content_base.xpt +0 -0
 - data/samples/navi/components/content_html.xpt +0 -0
 - data/samples/navi/components/content_htmldoc.xpt +0 -0
 - data/samples/navi/components/content_xmldoc.xpt +0 -0
 - data/samples/navi/components/content_xslt.xpt +0 -0
 - data/samples/navi/components/content_xtf.xpt +0 -0
 - data/samples/navi/components/directory.xpt +0 -0
 - data/samples/navi/components/docshell_base.xpt +0 -0
 - data/samples/navi/components/dom.xpt +0 -0
 - data/samples/navi/components/dom_base.xpt +0 -0
 - data/samples/navi/components/dom_canvas.xpt +0 -0
 - data/samples/navi/components/dom_core.xpt +0 -0
 - data/samples/navi/components/dom_css.xpt +0 -0
 - data/samples/navi/components/dom_events.xpt +0 -0
 - data/samples/navi/components/dom_html.xpt +0 -0
 - data/samples/navi/components/dom_loadsave.xpt +0 -0
 - data/samples/navi/components/dom_range.xpt +0 -0
 - data/samples/navi/components/dom_sidebar.xpt +0 -0
 - data/samples/navi/components/dom_storage.xpt +0 -0
 - data/samples/navi/components/dom_stylesheets.xpt +0 -0
 - data/samples/navi/components/dom_svg.xpt +0 -0
 - data/samples/navi/components/dom_traversal.xpt +0 -0
 - data/samples/navi/components/dom_views.xpt +0 -0
 - data/samples/navi/components/dom_xbl.xpt +0 -0
 - data/samples/navi/components/dom_xpath.xpt +0 -0
 - data/samples/navi/components/dom_xul.xpt +0 -0
 - data/samples/navi/components/downloads.xpt +0 -0
 - data/samples/navi/components/editor.xpt +0 -0
 - data/samples/navi/components/embed_base.xpt +0 -0
 - data/samples/navi/components/extensions.xpt +0 -0
 - data/samples/navi/components/exthandler.xpt +0 -0
 - data/samples/navi/components/fastfind.xpt +0 -0
 - data/samples/navi/components/feeds.xpt +0 -0
 - data/samples/navi/components/find.xpt +0 -0
 - data/samples/navi/components/gfx.xpt +0 -0
 - data/samples/navi/components/gksvgrenderer.xpt +0 -0
 - data/samples/navi/components/history.xpt +0 -0
 - data/samples/navi/components/htmlparser.xpt +0 -0
 - data/samples/navi/components/imglib2.xpt +0 -0
 - data/samples/navi/components/inspector.xpt +0 -0
 - data/samples/navi/components/intl.xpt +0 -0
 - data/samples/navi/components/intlcmpt.xpt +0 -0
 - data/samples/navi/components/jar.xpt +0 -0
 - data/samples/navi/components/jsconsole-clhandler.js +170 -0
 - data/samples/navi/components/jsconsole.xpt +0 -0
 - data/samples/navi/components/jsdservice.xpt +0 -0
 - data/samples/navi/components/layout_base.xpt +0 -0
 - data/samples/navi/components/layout_printing.xpt +0 -0
 - data/samples/navi/components/layout_xul.xpt +0 -0
 - data/samples/navi/components/layout_xul_tree.xpt +0 -0
 - data/samples/navi/components/locale.xpt +0 -0
 - data/samples/navi/components/lwbrk.xpt +0 -0
 - data/samples/navi/components/mimetype.xpt +0 -0
 - data/samples/navi/components/mozbrwsr.xpt +0 -0
 - data/samples/navi/components/mozfind.xpt +0 -0
 - data/samples/navi/components/necko.xpt +0 -0
 - data/samples/navi/components/necko_about.xpt +0 -0
 - data/samples/navi/components/necko_cache.xpt +0 -0
 - data/samples/navi/components/necko_cookie.xpt +0 -0
 - data/samples/navi/components/necko_data.xpt +0 -0
 - data/samples/navi/components/necko_dns.xpt +0 -0
 - data/samples/navi/components/necko_file.xpt +0 -0
 - data/samples/navi/components/necko_ftp.xpt +0 -0
 - data/samples/navi/components/necko_http.xpt +0 -0
 - data/samples/navi/components/necko_res.xpt +0 -0
 - data/samples/navi/components/necko_socket.xpt +0 -0
 - data/samples/navi/components/necko_strconv.xpt +0 -0
 - data/samples/navi/components/necko_viewsource.xpt +0 -0
 - data/samples/navi/components/nsCloseAllWindows.js +143 -0
 - data/samples/navi/components/nsDefaultCLH.js +231 -0
 - data/samples/navi/components/nsDictionary.js +148 -0
 - data/samples/navi/components/nsExtensionManager.js +8497 -0
 - data/samples/navi/components/nsHelperAppDlg.js +990 -0
 - data/samples/navi/components/nsInterfaceInfoToIDL.js +590 -0
 - data/samples/navi/components/nsKillAll.js +200 -0
 - data/samples/navi/components/nsPostUpdateWin.js +711 -0
 - data/samples/navi/components/nsProgressDialog.js +949 -0
 - data/samples/navi/components/nsProxyAutoConfig.js +396 -0
 - data/samples/navi/components/nsResetPref.js +175 -0
 - data/samples/navi/components/nsURLFormatter.js +179 -0
 - data/samples/navi/components/nsUpdateService.js +3074 -0
 - data/samples/navi/components/nsXULAppInstall.js +301 -0
 - data/samples/navi/components/nsXmlRpcClient.js +1038 -0
 - data/samples/navi/components/oji.xpt +0 -0
 - data/samples/navi/components/passwordmgr.xpt +0 -0
 - data/samples/navi/components/pipboot.xpt +0 -0
 - data/samples/navi/components/pipnss.xpt +0 -0
 - data/samples/navi/components/plugin.xpt +0 -0
 - data/samples/navi/components/pref.xpt +0 -0
 - data/samples/navi/components/prefetch.xpt +0 -0
 - data/samples/navi/components/profile.xpt +0 -0
 - data/samples/navi/components/progressDlg.xpt +0 -0
 - data/samples/navi/components/proxyObject.xpt +0 -0
 - data/samples/navi/components/rdf.xpt +0 -0
 - data/samples/navi/components/satchel.xpt +0 -0
 - data/samples/navi/components/saxparser.xpt +0 -0
 - data/samples/navi/components/shistory.xpt +0 -0
 - data/samples/navi/components/storage.xpt +0 -0
 - data/samples/navi/components/toolkitprofile.xpt +0 -0
 - data/samples/navi/components/transformiix.dll +0 -0
 - data/samples/navi/components/txmgr.xpt +0 -0
 - data/samples/navi/components/txtsvc.xpt +0 -0
 - data/samples/navi/components/uconv.xpt +0 -0
 - data/samples/navi/components/unicharutil.xpt +0 -0
 - data/samples/navi/components/universalchardet.dll +0 -0
 - data/samples/navi/components/update.xpt +0 -0
 - data/samples/navi/components/uriloader.xpt +0 -0
 - data/samples/navi/components/urlformatter.xpt +0 -0
 - data/samples/navi/components/webBrowser_core.xpt +0 -0
 - data/samples/navi/components/webbrowserpersist.xpt +0 -0
 - data/samples/navi/components/webshell_idls.xpt +0 -0
 - data/samples/navi/components/websrvcs.dll +0 -0
 - data/samples/navi/components/websrvcs.xpt +0 -0
 - data/samples/navi/components/widget.xpt +0 -0
 - data/samples/navi/components/windowds.xpt +0 -0
 - data/samples/navi/components/windowwatcher.xpt +0 -0
 - data/samples/navi/components/xml-rpc.xpt +0 -0
 - data/samples/navi/components/xmlextras.dll +0 -0
 - data/samples/navi/components/xpcom_base.xpt +0 -0
 - data/samples/navi/components/xpcom_components.xpt +0 -0
 - data/samples/navi/components/xpcom_ds.xpt +0 -0
 - data/samples/navi/components/xpcom_io.xpt +0 -0
 - data/samples/navi/components/xpcom_obsolete.xpt +0 -0
 - data/samples/navi/components/xpcom_thread.xpt +0 -0
 - data/samples/navi/components/xpcom_xpti.xpt +0 -0
 - data/samples/navi/components/xpconnect.xpt +0 -0
 - data/samples/navi/components/xpinstall.xpt +0 -0
 - data/samples/navi/components/xpti.dat +1424 -0
 - data/samples/navi/components/xulapp.xpt +0 -0
 - data/samples/navi/components/xulapp_setup.xpt +0 -0
 - data/samples/navi/components/xuldoc.xpt +0 -0
 - data/samples/navi/components/xulrunner.xpt +0 -0
 - data/samples/navi/components/xultmpl.xpt +0 -0
 - data/samples/navi/components/xulutil.dll +0 -0
 - data/samples/navi/controlsNaviMask.png +0 -0
 - data/samples/navi/greprefs/all.js +1344 -0
 - data/samples/navi/greprefs/security-prefs.js +69 -0
 - data/samples/navi/greprefs/xpinstall.js +2 -0
 - data/samples/navi/navi_demo.rb +207 -0
 - data/samples/navi/plugins/NPSWF32.dll +0 -0
 - data/samples/navi/plugins/flashplayer.xpt +0 -0
 - data/samples/navi/plugins/npnul32.dll +0 -0
 - data/samples/navi/plugins.cfg +10 -0
 - data/samples/navi/res/EditorOverride.css +359 -0
 - data/samples/navi/res/Thumbs.db +0 -0
 - data/samples/navi/res/arrow.gif +0 -0
 - data/samples/navi/res/arrowd.gif +0 -0
 - data/samples/navi/res/bloatcycle.html +40 -0
 - data/samples/navi/res/broken-image.gif +0 -0
 - data/samples/navi/res/charsetData.properties +199 -0
 - data/samples/navi/res/charsetalias.properties +517 -0
 - data/samples/navi/res/cmessage.txt +1 -0
 - data/samples/navi/res/dtd/xhtml11.dtd +300 -0
 - data/samples/navi/res/entityTables/html40Latin1.properties +146 -0
 - data/samples/navi/res/entityTables/html40Special.properties +69 -0
 - data/samples/navi/res/entityTables/html40Symbols.properties +164 -0
 - data/samples/navi/res/entityTables/htmlEntityVersions.properties +50 -0
 - data/samples/navi/res/entityTables/transliterate.properties +2367 -0
 - data/samples/navi/res/fonts/fontEncoding.properties +127 -0
 - data/samples/navi/res/fonts/fontNameMap.properties +134 -0
 - data/samples/navi/res/forms.css +531 -0
 - data/samples/navi/res/grabber.gif +0 -0
 - data/samples/navi/res/hiddenWindow.html +1 -0
 - data/samples/navi/res/html/Thumbs.db +0 -0
 - data/samples/navi/res/html/gopher-audio.gif +0 -0
 - data/samples/navi/res/html/gopher-binary.gif +0 -0
 - data/samples/navi/res/html/gopher-find.gif +0 -0
 - data/samples/navi/res/html/gopher-image.gif +0 -0
 - data/samples/navi/res/html/gopher-menu.gif +0 -0
 - data/samples/navi/res/html/gopher-movie.gif +0 -0
 - data/samples/navi/res/html/gopher-sound.gif +0 -0
 - data/samples/navi/res/html/gopher-telnet.gif +0 -0
 - data/samples/navi/res/html/gopher-text.gif +0 -0
 - data/samples/navi/res/html/gopher-unknown.gif +0 -0
 - data/samples/navi/res/html.css +478 -0
 - data/samples/navi/res/langGroups.properties +236 -0
 - data/samples/navi/res/language.properties +259 -0
 - data/samples/navi/res/loading-image.gif +0 -0
 - data/samples/navi/res/quirk.css +282 -0
 - data/samples/navi/res/samples/Anieyes.gif +0 -0
 - data/samples/navi/res/samples/Thumbs.db +0 -0
 - data/samples/navi/res/samples/aform.css +69 -0
 - data/samples/navi/res/samples/beeptest.html +18 -0
 - data/samples/navi/res/samples/bform.css +45 -0
 - data/samples/navi/res/samples/bg.jpg +0 -0
 - data/samples/navi/res/samples/cform.css +40 -0
 - data/samples/navi/res/samples/checkboxTest.xul +47 -0
 - data/samples/navi/res/samples/demoform.css +97 -0
 - data/samples/navi/res/samples/find.html +97 -0
 - data/samples/navi/res/samples/gear1.gif +0 -0
 - data/samples/navi/res/samples/image_props.html +58 -0
 - data/samples/navi/res/samples/mozform.css +256 -0
 - data/samples/navi/res/samples/printsetup.html +175 -0
 - data/samples/navi/res/samples/raptor.jpg +0 -0
 - data/samples/navi/res/samples/rock_gra.gif +0 -0
 - data/samples/navi/res/samples/scrollbarTest1.xul +66 -0
 - data/samples/navi/res/samples/scrollbarTest2.xul +19 -0
 - data/samples/navi/res/samples/sliderTest1.xul +14 -0
 - data/samples/navi/res/samples/soundtest.html +20 -0
 - data/samples/navi/res/samples/test.wav +0 -0
 - data/samples/navi/res/samples/test0.html +220 -0
 - data/samples/navi/res/samples/test1.html +84 -0
 - data/samples/navi/res/samples/test10.html +16 -0
 - data/samples/navi/res/samples/test11.html +42 -0
 - data/samples/navi/res/samples/test12.html +79 -0
 - data/samples/navi/res/samples/test13.html +126 -0
 - data/samples/navi/res/samples/test14.html +5 -0
 - data/samples/navi/res/samples/test15.html +5 -0
 - data/samples/navi/res/samples/test16.html +124 -0
 - data/samples/navi/res/samples/test2.html +41 -0
 - data/samples/navi/res/samples/test3.html +126 -0
 - data/samples/navi/res/samples/test4.html +335 -0
 - data/samples/navi/res/samples/test5.html +199 -0
 - data/samples/navi/res/samples/test6.html +335 -0
 - data/samples/navi/res/samples/test7.html +11 -0
 - data/samples/navi/res/samples/test8-1.html +66 -0
 - data/samples/navi/res/samples/test8.html +662 -0
 - data/samples/navi/res/samples/test8dom.html +64 -0
 - data/samples/navi/res/samples/test8sca.html +308 -0
 - data/samples/navi/res/samples/test8siz.html +224 -0
 - data/samples/navi/res/samples/test8tab.html +9 -0
 - data/samples/navi/res/samples/test9.html +12 -0
 - data/samples/navi/res/samples/test9a.html +39 -0
 - data/samples/navi/res/samples/test9b.html +16 -0
 - data/samples/navi/res/samples/test_ed.html +5 -0
 - data/samples/navi/res/samples/test_form.html +34 -0
 - data/samples/navi/res/samples/test_gfx.html +75 -0
 - data/samples/navi/res/samples/test_lbox.html +100 -0
 - data/samples/navi/res/samples/test_pr.html +87 -0
 - data/samples/navi/res/samples/test_weight.html +45 -0
 - data/samples/navi/res/samples/toolbarTest1.xul +51 -0
 - data/samples/navi/res/samples/treeTest1.css +62 -0
 - data/samples/navi/res/samples/treeTest1.xul +110 -0
 - data/samples/navi/res/samples/xulTest.css +130 -0
 - data/samples/navi/res/svg.css +64 -0
 - data/samples/navi/res/table-add-column-after-active.gif +0 -0
 - data/samples/navi/res/table-add-column-after-hover.gif +0 -0
 - data/samples/navi/res/table-add-column-after.gif +0 -0
 - data/samples/navi/res/table-add-column-before-active.gif +0 -0
 - data/samples/navi/res/table-add-column-before-hover.gif +0 -0
 - data/samples/navi/res/table-add-column-before.gif +0 -0
 - data/samples/navi/res/table-add-row-after-active.gif +0 -0
 - data/samples/navi/res/table-add-row-after-hover.gif +0 -0
 - data/samples/navi/res/table-add-row-after.gif +0 -0
 - data/samples/navi/res/table-add-row-before-active.gif +0 -0
 - data/samples/navi/res/table-add-row-before-hover.gif +0 -0
 - data/samples/navi/res/table-add-row-before.gif +0 -0
 - data/samples/navi/res/table-remove-column-active.gif +0 -0
 - data/samples/navi/res/table-remove-column-hover.gif +0 -0
 - data/samples/navi/res/table-remove-column.gif +0 -0
 - data/samples/navi/res/table-remove-row-active.gif +0 -0
 - data/samples/navi/res/table-remove-row-hover.gif +0 -0
 - data/samples/navi/res/table-remove-row.gif +0 -0
 - data/samples/navi/res/throbber/Thumbs.db +0 -0
 - data/samples/navi/res/throbber/anim.gif +0 -0
 - data/samples/navi/res/throbber/anims00.gif +0 -0
 - data/samples/navi/res/throbber/anims01.gif +0 -0
 - data/samples/navi/res/throbber/anims02.gif +0 -0
 - data/samples/navi/res/throbber/anims03.gif +0 -0
 - data/samples/navi/res/throbber/anims04.gif +0 -0
 - data/samples/navi/res/throbber/anims05.gif +0 -0
 - data/samples/navi/res/throbber/anims06.gif +0 -0
 - data/samples/navi/res/throbber/anims07.gif +0 -0
 - data/samples/navi/res/throbber/anims08.gif +0 -0
 - data/samples/navi/res/throbber/anims09.gif +0 -0
 - data/samples/navi/res/throbber/anims10.gif +0 -0
 - data/samples/navi/res/throbber/anims11.gif +0 -0
 - data/samples/navi/res/throbber/anims12.gif +0 -0
 - data/samples/navi/res/throbber/anims13.gif +0 -0
 - data/samples/navi/res/throbber/anims14.gif +0 -0
 - data/samples/navi/res/throbber/anims15.gif +0 -0
 - data/samples/navi/res/throbber/anims16.gif +0 -0
 - data/samples/navi/res/throbber/anims17.gif +0 -0
 - data/samples/navi/res/throbber/anims18.gif +0 -0
 - data/samples/navi/res/throbber/anims19.gif +0 -0
 - data/samples/navi/res/throbber/anims20.gif +0 -0
 - data/samples/navi/res/throbber/anims21.gif +0 -0
 - data/samples/navi/res/throbber/anims22.gif +0 -0
 - data/samples/navi/res/throbber/anims23.gif +0 -0
 - data/samples/navi/res/throbber/anims24.gif +0 -0
 - data/samples/navi/res/throbber/anims25.gif +0 -0
 - data/samples/navi/res/throbber/anims26.gif +0 -0
 - data/samples/navi/res/throbber/anims27.gif +0 -0
 - data/samples/navi/res/throbber/anims28.gif +0 -0
 - data/samples/navi/res/throbber/anims29.gif +0 -0
 - data/samples/navi/res/ua.css +235 -0
 - data/samples/navi/res/viewer.properties +1 -0
 - data/samples/navi/res/viewsource.css +118 -0
 - data/samples/navi/res/wincharset.properties +55 -0
 - data/samples/navi/resources.cfg +14 -0
 - data/samples/navi/testNaviMask.png +0 -0
 - data/samples/ogre.cfg +8 -0
 - data/samples/plugins.cfg +11 -0
 - data/samples/quake3settings.cfg +2 -0
 - data/samples/render_run_log.5796 +891 -0
 - data/samples/render_to_texture.rb +161 -0
 - data/samples/resources.cfg +16 -0
 - data/samples/sky_box.rb +107 -0
 - data/samples/sky_dome.rb +86 -0
 - data/samples/sky_plane.rb +27 -0
 - data/samples/smoke.rb +23 -0
 - data/samples/work/cube_mapping.rb +686 -0
 - metadata +500 -0
 
| 
         @@ -0,0 +1,301 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
         
     | 
| 
      
 2 
     | 
    
         
            +
            //@line 41 "/c/mozilla/xulrunner/setup/nsXULAppInstall.js"
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            const nsIFile             = Components.interfaces.nsIFile;
         
     | 
| 
      
 5 
     | 
    
         
            +
            const nsIINIParser        = Components.interfaces.nsIINIParser;
         
     | 
| 
      
 6 
     | 
    
         
            +
            const nsIINIParserFactory = Components.interfaces.nsIINIParserFactory;
         
     | 
| 
      
 7 
     | 
    
         
            +
            const nsILocalFile        = Components.interfaces.nsILocalFile;
         
     | 
| 
      
 8 
     | 
    
         
            +
            const nsISupports         = Components.interfaces.nsISupports;
         
     | 
| 
      
 9 
     | 
    
         
            +
            const nsIXULAppInstall    = Components.interfaces.nsIXULAppInstall;
         
     | 
| 
      
 10 
     | 
    
         
            +
            const nsIZipEntry         = Components.interfaces.nsIZipEntry;
         
     | 
| 
      
 11 
     | 
    
         
            +
            const nsIZipReader        = Components.interfaces.nsIZipReader;
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
            function getDirectoryKey(aKey) {
         
     | 
| 
      
 14 
     | 
    
         
            +
              try {
         
     | 
| 
      
 15 
     | 
    
         
            +
                return Components.classes["@mozilla.org/file/directory_service;1"].
         
     | 
| 
      
 16 
     | 
    
         
            +
                  getService(Components.interfaces.nsIProperties).
         
     | 
| 
      
 17 
     | 
    
         
            +
                  get(aKey, nsIFile);
         
     | 
| 
      
 18 
     | 
    
         
            +
              }
         
     | 
| 
      
 19 
     | 
    
         
            +
              catch (e) {
         
     | 
| 
      
 20 
     | 
    
         
            +
                throw "Couln't get directory service key: " + aKey;
         
     | 
| 
      
 21 
     | 
    
         
            +
              }
         
     | 
| 
      
 22 
     | 
    
         
            +
            }
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
            function createINIParser(aFile) {
         
     | 
| 
      
 25 
     | 
    
         
            +
              return Components.manager.
         
     | 
| 
      
 26 
     | 
    
         
            +
                getClassObjectByContractID("@mozilla.org/xpcom/ini-parser-factory;1",
         
     | 
| 
      
 27 
     | 
    
         
            +
                                           nsIINIParserFactory).
         
     | 
| 
      
 28 
     | 
    
         
            +
                createINIParser(aFile);
         
     | 
| 
      
 29 
     | 
    
         
            +
            }
         
     | 
| 
      
 30 
     | 
    
         
            +
             
     | 
| 
      
 31 
     | 
    
         
            +
            function copy_recurse(aSource, aDest) {
         
     | 
| 
      
 32 
     | 
    
         
            +
              var e = aSource.directoryEntries;
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
              while (e.hasMoreElements()) {
         
     | 
| 
      
 35 
     | 
    
         
            +
                var f = e.getNext().QueryInterface(nsIFile);
         
     | 
| 
      
 36 
     | 
    
         
            +
                var leaf = f.leafName;
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
                var ddest = aDest.clone();
         
     | 
| 
      
 39 
     | 
    
         
            +
                ddest.append(leaf);
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
                if (f.isDirectory()) {
         
     | 
| 
      
 42 
     | 
    
         
            +
                  copy_recurse(f, ddest);
         
     | 
| 
      
 43 
     | 
    
         
            +
                }
         
     | 
| 
      
 44 
     | 
    
         
            +
                else {
         
     | 
| 
      
 45 
     | 
    
         
            +
                  if (ddest.exists())
         
     | 
| 
      
 46 
     | 
    
         
            +
                    ddest.remove(false);
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                  f.copyTo(aDest, leaf);
         
     | 
| 
      
 49 
     | 
    
         
            +
                }
         
     | 
| 
      
 50 
     | 
    
         
            +
              }
         
     | 
| 
      
 51 
     | 
    
         
            +
            }
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
            const PR_WRONLY = 0x02;
         
     | 
| 
      
 54 
     | 
    
         
            +
            const PR_CREATE_FILE = 0x08;
         
     | 
| 
      
 55 
     | 
    
         
            +
            const PR_TRUNCATE = 0x20;
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
            function openFileOutputStream(aFile) {
         
     | 
| 
      
 58 
     | 
    
         
            +
              var s = Components.classes["@mozilla.org/network/file-output-stream;1"].
         
     | 
| 
      
 59 
     | 
    
         
            +
                createInstance(Components.interfaces.nsIFileOutputStream);
         
     | 
| 
      
 60 
     | 
    
         
            +
              s.init(aFile, PR_WRONLY | PR_CREATE_FILE | PR_TRUNCATE, 0644, 0);
         
     | 
| 
      
 61 
     | 
    
         
            +
              return s;
         
     | 
| 
      
 62 
     | 
    
         
            +
            }
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
            /**
         
     | 
| 
      
 65 
     | 
    
         
            +
             * An extractor implements the following prototype:
         
     | 
| 
      
 66 
     | 
    
         
            +
             * readonly attribute nsIINIPaser iniParser;
         
     | 
| 
      
 67 
     | 
    
         
            +
             * void copyTo(in nsILocalFile root);
         
     | 
| 
      
 68 
     | 
    
         
            +
             */
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
      
 70 
     | 
    
         
            +
            function directoryExtractor(aFile) {
         
     | 
| 
      
 71 
     | 
    
         
            +
              this.mDirectory = aFile;
         
     | 
| 
      
 72 
     | 
    
         
            +
            }
         
     | 
| 
      
 73 
     | 
    
         
            +
             
     | 
| 
      
 74 
     | 
    
         
            +
            directoryExtractor.prototype = {
         
     | 
| 
      
 75 
     | 
    
         
            +
              mINIParser : null,
         
     | 
| 
      
 76 
     | 
    
         
            +
             
     | 
| 
      
 77 
     | 
    
         
            +
              get iniParser() {
         
     | 
| 
      
 78 
     | 
    
         
            +
                if (!this.mINIParser) {
         
     | 
| 
      
 79 
     | 
    
         
            +
                  var iniFile = this.mDirectory.clone();
         
     | 
| 
      
 80 
     | 
    
         
            +
                  iniFile.append("application.ini");
         
     | 
| 
      
 81 
     | 
    
         
            +
             
     | 
| 
      
 82 
     | 
    
         
            +
                  this.mINIParser = createINIParser(iniFile);
         
     | 
| 
      
 83 
     | 
    
         
            +
                }
         
     | 
| 
      
 84 
     | 
    
         
            +
                return this.mINIParser;
         
     | 
| 
      
 85 
     | 
    
         
            +
              },
         
     | 
| 
      
 86 
     | 
    
         
            +
             
     | 
| 
      
 87 
     | 
    
         
            +
              copyTo : function de_copyTo(aDest) {
         
     | 
| 
      
 88 
     | 
    
         
            +
                // Assume the root already exists
         
     | 
| 
      
 89 
     | 
    
         
            +
                copy_recurse(this.mDirectory, aDest);
         
     | 
| 
      
 90 
     | 
    
         
            +
              }
         
     | 
| 
      
 91 
     | 
    
         
            +
            };
         
     | 
| 
      
 92 
     | 
    
         
            +
             
     | 
| 
      
 93 
     | 
    
         
            +
            function zipExtractor(aFile) {
         
     | 
| 
      
 94 
     | 
    
         
            +
              this.mZipReader = Components.classes["@mozilla.org/libjar/zip-reader;1"].
         
     | 
| 
      
 95 
     | 
    
         
            +
                createInstance(nsIZipReader);
         
     | 
| 
      
 96 
     | 
    
         
            +
              this.mZipReader.init(aFile);
         
     | 
| 
      
 97 
     | 
    
         
            +
              this.mZipReader.open();
         
     | 
| 
      
 98 
     | 
    
         
            +
              this.mZipReader.test(null);
         
     | 
| 
      
 99 
     | 
    
         
            +
            }
         
     | 
| 
      
 100 
     | 
    
         
            +
             
     | 
| 
      
 101 
     | 
    
         
            +
            zipExtractor.prototype = {
         
     | 
| 
      
 102 
     | 
    
         
            +
              mINIParser : null,
         
     | 
| 
      
 103 
     | 
    
         
            +
             
     | 
| 
      
 104 
     | 
    
         
            +
              get iniParser() {
         
     | 
| 
      
 105 
     | 
    
         
            +
                if (!this.mINIParser) {
         
     | 
| 
      
 106 
     | 
    
         
            +
                  // XXXbsmedberg: this is not very unique, guessing could be a problem
         
     | 
| 
      
 107 
     | 
    
         
            +
                  var f = getDirectoryKey("TmpD");
         
     | 
| 
      
 108 
     | 
    
         
            +
                  f.append("application.ini");
         
     | 
| 
      
 109 
     | 
    
         
            +
                  f.createUnique(nsIFile.NORMAL_FILE_TYPE, 0600);
         
     | 
| 
      
 110 
     | 
    
         
            +
             
     | 
| 
      
 111 
     | 
    
         
            +
                  try {
         
     | 
| 
      
 112 
     | 
    
         
            +
                    this.mZipReader.extract("application.ini", f);
         
     | 
| 
      
 113 
     | 
    
         
            +
                    this.mINIParser = createINIParser(f);
         
     | 
| 
      
 114 
     | 
    
         
            +
                  }
         
     | 
| 
      
 115 
     | 
    
         
            +
                  catch (e) {
         
     | 
| 
      
 116 
     | 
    
         
            +
                    try {
         
     | 
| 
      
 117 
     | 
    
         
            +
                      f.remove();
         
     | 
| 
      
 118 
     | 
    
         
            +
                    }
         
     | 
| 
      
 119 
     | 
    
         
            +
                    catch (ee) { }
         
     | 
| 
      
 120 
     | 
    
         
            +
             
     | 
| 
      
 121 
     | 
    
         
            +
                    throw e;
         
     | 
| 
      
 122 
     | 
    
         
            +
                  }
         
     | 
| 
      
 123 
     | 
    
         
            +
                  try {
         
     | 
| 
      
 124 
     | 
    
         
            +
                    f.remove();
         
     | 
| 
      
 125 
     | 
    
         
            +
                  }
         
     | 
| 
      
 126 
     | 
    
         
            +
                  catch (e) { }
         
     | 
| 
      
 127 
     | 
    
         
            +
                }
         
     | 
| 
      
 128 
     | 
    
         
            +
                return this.mINIParser;
         
     | 
| 
      
 129 
     | 
    
         
            +
              },
         
     | 
| 
      
 130 
     | 
    
         
            +
             
     | 
| 
      
 131 
     | 
    
         
            +
              copyTo : function ze_CopyTo(aDest) {
         
     | 
| 
      
 132 
     | 
    
         
            +
                var entries = this.mZipReader.findEntries("*");
         
     | 
| 
      
 133 
     | 
    
         
            +
                while (entries.hasMoreElements()) {
         
     | 
| 
      
 134 
     | 
    
         
            +
                  var entry = entries.getNext().QueryInterface(nsIZipEntry);
         
     | 
| 
      
 135 
     | 
    
         
            +
             
     | 
| 
      
 136 
     | 
    
         
            +
                  this._installZipEntry(this.mZipReader, entry, aDest);
         
     | 
| 
      
 137 
     | 
    
         
            +
                }
         
     | 
| 
      
 138 
     | 
    
         
            +
              },
         
     | 
| 
      
 139 
     | 
    
         
            +
             
     | 
| 
      
 140 
     | 
    
         
            +
              _installZipEntry : function ze_installZipEntry(aZipReader, aZipEntry,
         
     | 
| 
      
 141 
     | 
    
         
            +
                                                             aDestination) {
         
     | 
| 
      
 142 
     | 
    
         
            +
                var file = aDestination.clone();
         
     | 
| 
      
 143 
     | 
    
         
            +
             
     | 
| 
      
 144 
     | 
    
         
            +
                var path = aZipEntry.name;
         
     | 
| 
      
 145 
     | 
    
         
            +
                var dirs = path.split(/\//);
         
     | 
| 
      
 146 
     | 
    
         
            +
                var isDirectory = path.match(/\/$/) != null;
         
     | 
| 
      
 147 
     | 
    
         
            +
             
     | 
| 
      
 148 
     | 
    
         
            +
                var end = dirs.length;
         
     | 
| 
      
 149 
     | 
    
         
            +
                if (!isDirectory)
         
     | 
| 
      
 150 
     | 
    
         
            +
                  --end;
         
     | 
| 
      
 151 
     | 
    
         
            +
             
     | 
| 
      
 152 
     | 
    
         
            +
                for (var i = 0; i < end; ++i) {
         
     | 
| 
      
 153 
     | 
    
         
            +
                  file.append(dirs[i]);
         
     | 
| 
      
 154 
     | 
    
         
            +
                  if (!file.exists()) {
         
     | 
| 
      
 155 
     | 
    
         
            +
                    file.create(nsIFile.DIRECTORY_TYPE, 0755);
         
     | 
| 
      
 156 
     | 
    
         
            +
                  }
         
     | 
| 
      
 157 
     | 
    
         
            +
                }
         
     | 
| 
      
 158 
     | 
    
         
            +
             
     | 
| 
      
 159 
     | 
    
         
            +
                if (!isDirectory) {
         
     | 
| 
      
 160 
     | 
    
         
            +
                  file.append(dirs[end]);
         
     | 
| 
      
 161 
     | 
    
         
            +
                  aZipReader.extract(path, file);
         
     | 
| 
      
 162 
     | 
    
         
            +
                }
         
     | 
| 
      
 163 
     | 
    
         
            +
              }
         
     | 
| 
      
 164 
     | 
    
         
            +
            };
         
     | 
| 
      
 165 
     | 
    
         
            +
             
     | 
| 
      
 166 
     | 
    
         
            +
            function createExtractor(aFile) {
         
     | 
| 
      
 167 
     | 
    
         
            +
              if (aFile.isDirectory())
         
     | 
| 
      
 168 
     | 
    
         
            +
                return new directoryExtractor(aFile);
         
     | 
| 
      
 169 
     | 
    
         
            +
             
     | 
| 
      
 170 
     | 
    
         
            +
              return new zipExtractor(aFile);
         
     | 
| 
      
 171 
     | 
    
         
            +
            }
         
     | 
| 
      
 172 
     | 
    
         
            +
             
     | 
| 
      
 173 
     | 
    
         
            +
            const AppInstall = {
         
     | 
| 
      
 174 
     | 
    
         
            +
             
     | 
| 
      
 175 
     | 
    
         
            +
              /* nsISupports */
         
     | 
| 
      
 176 
     | 
    
         
            +
              QueryInterface : function ai_QI(iid) {
         
     | 
| 
      
 177 
     | 
    
         
            +
                if (iid.equals(nsIXULAppInstall) ||
         
     | 
| 
      
 178 
     | 
    
         
            +
                    iid.equals(nsISupports))
         
     | 
| 
      
 179 
     | 
    
         
            +
                  return this;
         
     | 
| 
      
 180 
     | 
    
         
            +
             
     | 
| 
      
 181 
     | 
    
         
            +
                throw Components.result.NS_ERROR_NO_INTERFACE;
         
     | 
| 
      
 182 
     | 
    
         
            +
              },
         
     | 
| 
      
 183 
     | 
    
         
            +
             
     | 
| 
      
 184 
     | 
    
         
            +
              /* nsIXULAppInstall */
         
     | 
| 
      
 185 
     | 
    
         
            +
              installApplication : function ai_IA(aAppFile, aDirectory, aLeafName) {
         
     | 
| 
      
 186 
     | 
    
         
            +
                var extractor = createExtractor(aAppFile);
         
     | 
| 
      
 187 
     | 
    
         
            +
                var iniParser = extractor.iniParser;
         
     | 
| 
      
 188 
     | 
    
         
            +
             
     | 
| 
      
 189 
     | 
    
         
            +
                var appName = iniParser.getString("App", "Name");
         
     | 
| 
      
 190 
     | 
    
         
            +
             
     | 
| 
      
 191 
     | 
    
         
            +
                // vendor is optional
         
     | 
| 
      
 192 
     | 
    
         
            +
                var vendor;
         
     | 
| 
      
 193 
     | 
    
         
            +
                try {
         
     | 
| 
      
 194 
     | 
    
         
            +
                  vendor = iniParser.getString("App", "Vendor");
         
     | 
| 
      
 195 
     | 
    
         
            +
                }
         
     | 
| 
      
 196 
     | 
    
         
            +
                catch (e) { }
         
     | 
| 
      
 197 
     | 
    
         
            +
             
     | 
| 
      
 198 
     | 
    
         
            +
                if (aDirectory == null) {
         
     | 
| 
      
 199 
     | 
    
         
            +
            //@line 238 "/c/mozilla/xulrunner/setup/nsXULAppInstall.js"
         
     | 
| 
      
 200 
     | 
    
         
            +
                  aDirectory = getDirectoryKey("ProgF");
         
     | 
| 
      
 201 
     | 
    
         
            +
                  if (vendor)
         
     | 
| 
      
 202 
     | 
    
         
            +
                    aDirectory.append(vendor);
         
     | 
| 
      
 203 
     | 
    
         
            +
            //@line 254 "/c/mozilla/xulrunner/setup/nsXULAppInstall.js"
         
     | 
| 
      
 204 
     | 
    
         
            +
                }
         
     | 
| 
      
 205 
     | 
    
         
            +
                else {
         
     | 
| 
      
 206 
     | 
    
         
            +
                  aDirectory = aDirectory.clone();
         
     | 
| 
      
 207 
     | 
    
         
            +
                }
         
     | 
| 
      
 208 
     | 
    
         
            +
             
     | 
| 
      
 209 
     | 
    
         
            +
                if (!aDirectory.exists()) {
         
     | 
| 
      
 210 
     | 
    
         
            +
                  aDirectory.create(nsIFile.DIRECTORY_TYPE, 0755);
         
     | 
| 
      
 211 
     | 
    
         
            +
                }
         
     | 
| 
      
 212 
     | 
    
         
            +
             
     | 
| 
      
 213 
     | 
    
         
            +
                if (aLeafName == "") {
         
     | 
| 
      
 214 
     | 
    
         
            +
            //@line 268 "/c/mozilla/xulrunner/setup/nsXULAppInstall.js"
         
     | 
| 
      
 215 
     | 
    
         
            +
                  aLeafName = appName;
         
     | 
| 
      
 216 
     | 
    
         
            +
            //@line 273 "/c/mozilla/xulrunner/setup/nsXULAppInstall.js"
         
     | 
| 
      
 217 
     | 
    
         
            +
                }
         
     | 
| 
      
 218 
     | 
    
         
            +
             
     | 
| 
      
 219 
     | 
    
         
            +
                aDirectory.append(aLeafName);
         
     | 
| 
      
 220 
     | 
    
         
            +
                if (!aDirectory.exists()) {
         
     | 
| 
      
 221 
     | 
    
         
            +
                  aDirectory.create(nsIFile.DIRECTORY_TYPE, 0755);
         
     | 
| 
      
 222 
     | 
    
         
            +
                }
         
     | 
| 
      
 223 
     | 
    
         
            +
             
     | 
| 
      
 224 
     | 
    
         
            +
            //@line 344 "/c/mozilla/xulrunner/setup/nsXULAppInstall.js"
         
     | 
| 
      
 225 
     | 
    
         
            +
                extractor.copyTo(aDirectory);
         
     | 
| 
      
 226 
     | 
    
         
            +
             
     | 
| 
      
 227 
     | 
    
         
            +
                var xulrunnerBinary = getDirectoryKey("XCurProcD");
         
     | 
| 
      
 228 
     | 
    
         
            +
                xulrunnerBinary.append("xulrunner-stub.exe");
         
     | 
| 
      
 229 
     | 
    
         
            +
             
     | 
| 
      
 230 
     | 
    
         
            +
                xulrunnerBinary.copyTo(aDirectory, appName.toLowerCase() + ".exe");
         
     | 
| 
      
 231 
     | 
    
         
            +
            //@line 351 "/c/mozilla/xulrunner/setup/nsXULAppInstall.js"
         
     | 
| 
      
 232 
     | 
    
         
            +
              }
         
     | 
| 
      
 233 
     | 
    
         
            +
            };
         
     | 
| 
      
 234 
     | 
    
         
            +
             
     | 
| 
      
 235 
     | 
    
         
            +
            const AppInstallFactory = {
         
     | 
| 
      
 236 
     | 
    
         
            +
              /* nsISupports */
         
     | 
| 
      
 237 
     | 
    
         
            +
              QueryInterface : function aif_QI(iid) {
         
     | 
| 
      
 238 
     | 
    
         
            +
                if (iid.equals(Components.interfaces.nsIFactory) ||
         
     | 
| 
      
 239 
     | 
    
         
            +
                    iid.equals(nsISupports))
         
     | 
| 
      
 240 
     | 
    
         
            +
                  return this;
         
     | 
| 
      
 241 
     | 
    
         
            +
             
     | 
| 
      
 242 
     | 
    
         
            +
                throw Components.results.NS_ERROR_NO_INTERFACE;
         
     | 
| 
      
 243 
     | 
    
         
            +
              },
         
     | 
| 
      
 244 
     | 
    
         
            +
             
     | 
| 
      
 245 
     | 
    
         
            +
              /* nsIFactory */
         
     | 
| 
      
 246 
     | 
    
         
            +
              createInstance : function aif_CI(aOuter, aIID) {
         
     | 
| 
      
 247 
     | 
    
         
            +
                if (aOuter)
         
     | 
| 
      
 248 
     | 
    
         
            +
                  throw Components.results.NS_ERROR_NO_AGGREGATION;
         
     | 
| 
      
 249 
     | 
    
         
            +
             
     | 
| 
      
 250 
     | 
    
         
            +
                return AppInstall.QueryInterface(aIID);
         
     | 
| 
      
 251 
     | 
    
         
            +
              },
         
     | 
| 
      
 252 
     | 
    
         
            +
             
     | 
| 
      
 253 
     | 
    
         
            +
              lockFactory : function aif_lock(aLock) { }
         
     | 
| 
      
 254 
     | 
    
         
            +
            };
         
     | 
| 
      
 255 
     | 
    
         
            +
             
     | 
| 
      
 256 
     | 
    
         
            +
            const AppInstallContractID = "@mozilla.org/xulrunner/app-install-service;1";
         
     | 
| 
      
 257 
     | 
    
         
            +
            const AppInstallCID = Components.ID("{00790a19-27e2-4d9a-bef0-244080feabfd}");
         
     | 
| 
      
 258 
     | 
    
         
            +
             
     | 
| 
      
 259 
     | 
    
         
            +
            const AppInstallModule = {
         
     | 
| 
      
 260 
     | 
    
         
            +
              /* nsISupports */
         
     | 
| 
      
 261 
     | 
    
         
            +
              QueryInterface : function mod_QI(iid) {
         
     | 
| 
      
 262 
     | 
    
         
            +
                if (iid.equals(Components.interfaces.nsIModule) ||
         
     | 
| 
      
 263 
     | 
    
         
            +
                    iid.equals(nsISupports))
         
     | 
| 
      
 264 
     | 
    
         
            +
                  return this;
         
     | 
| 
      
 265 
     | 
    
         
            +
             
     | 
| 
      
 266 
     | 
    
         
            +
                throw Components.results.NS_ERROR_NO_INTERFACE;
         
     | 
| 
      
 267 
     | 
    
         
            +
              },
         
     | 
| 
      
 268 
     | 
    
         
            +
             
     | 
| 
      
 269 
     | 
    
         
            +
              /* nsIModule */
         
     | 
| 
      
 270 
     | 
    
         
            +
              getClassObject : function mod_gco(aCompMgr, aClass, aIID) {
         
     | 
| 
      
 271 
     | 
    
         
            +
                if (aClass.equals(AppInstallCID))
         
     | 
| 
      
 272 
     | 
    
         
            +
                  return AppInstallFactory.QueryInterface(aIID);
         
     | 
| 
      
 273 
     | 
    
         
            +
             
     | 
| 
      
 274 
     | 
    
         
            +
                return Components.results.NS_ERROR_FACTORY_NOT_REGISTERED;
         
     | 
| 
      
 275 
     | 
    
         
            +
              },
         
     | 
| 
      
 276 
     | 
    
         
            +
             
     | 
| 
      
 277 
     | 
    
         
            +
              registerSelf : function mod_regself(aCompMgr, aLocation,
         
     | 
| 
      
 278 
     | 
    
         
            +
                                                  aLoaderStr, aType) {
         
     | 
| 
      
 279 
     | 
    
         
            +
                var reg = aCompMgr.QueryInterface(Components.interfaces.nsIComponentRegistrar);
         
     | 
| 
      
 280 
     | 
    
         
            +
                reg.registerFactoryLocation(AppInstallCID,
         
     | 
| 
      
 281 
     | 
    
         
            +
                                            "nsXULAppInstall",
         
     | 
| 
      
 282 
     | 
    
         
            +
                                            AppInstallContractID,
         
     | 
| 
      
 283 
     | 
    
         
            +
                                            aLocation,
         
     | 
| 
      
 284 
     | 
    
         
            +
                                            aLoaderStr,
         
     | 
| 
      
 285 
     | 
    
         
            +
                                            aType);
         
     | 
| 
      
 286 
     | 
    
         
            +
              },
         
     | 
| 
      
 287 
     | 
    
         
            +
             
     | 
| 
      
 288 
     | 
    
         
            +
              unregisterSelf : function mod_unreg(aCompMgr, aLocation, aLoaderStr) {
         
     | 
| 
      
 289 
     | 
    
         
            +
                var reg = aCompMgr.QueryInterface(Components.interfaces.nsIComponentRegistrar);
         
     | 
| 
      
 290 
     | 
    
         
            +
                reg.unregisterFactoryLocation(AppInstallCID,
         
     | 
| 
      
 291 
     | 
    
         
            +
                                              aLocation);
         
     | 
| 
      
 292 
     | 
    
         
            +
              },
         
     | 
| 
      
 293 
     | 
    
         
            +
             
     | 
| 
      
 294 
     | 
    
         
            +
              canUnload : function mod_unload(aCompMgr) {
         
     | 
| 
      
 295 
     | 
    
         
            +
                return true;
         
     | 
| 
      
 296 
     | 
    
         
            +
              }
         
     | 
| 
      
 297 
     | 
    
         
            +
            };
         
     | 
| 
      
 298 
     | 
    
         
            +
             
     | 
| 
      
 299 
     | 
    
         
            +
            function NSGetModule(compMgr, fileSpec) {
         
     | 
| 
      
 300 
     | 
    
         
            +
              return AppInstallModule;
         
     | 
| 
      
 301 
     | 
    
         
            +
            }
         
     |