From be18a677863925963551ce3e88a4a4d254f3870c Mon Sep 17 00:00:00 2001 From: John Mayhew Date: Tue, 14 Feb 2012 09:26:18 -0800 Subject: Implemented about box component and hooked it up to the About menu --- js/components/about-box.reel/about-box.js | 76 +++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 js/components/about-box.reel/about-box.js (limited to 'js/components/about-box.reel/about-box.js') diff --git a/js/components/about-box.reel/about-box.js b/js/components/about-box.reel/about-box.js new file mode 100644 index 00000000..1a0825ff --- /dev/null +++ b/js/components/about-box.reel/about-box.js @@ -0,0 +1,76 @@ +/* +This file contains proprietary software owned by Motorola Mobility, Inc.
+No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.
+(c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved. +
*/ + +var Montage = require("montage/core/core").Montage, +Component = require("montage/ui/component").Component, +Popup = require("montage/ui/popup/popup.reel").Popup; + +var AboutBox = exports.AboutBox = Montage.create(Component, { + _ninjaVersionString: { + enumerable: false, + value: null + }, + + _popup: { + enumerable: false, + value: null + }, + + captureMouseup: { + value: function(event) { + document.removeEventListener("mouseup", this, true); + this._popup.hide(); + } + }, + + captureMousedown: { + value: function(event) { + // ignore clicks on our links to the license, credits or project page + if(event._event.srcElement.className !== 'aboutBoxAnchor') { + document.addEventListener("mouseup", this, true); + document.removeEventListener("mousedown", this, true); + } + } + }, + + prepareForDraw: { + value: function() { + if(this._ninjaVersionString == null) { + this._ninjaVersionString = this.application.ninja.ninjaVersion; + } + + if(this._ninjaVersionString) { + var verNum = document.getElementById("aboutBoxVersionNumber"); + if(verNum) { + verNum.innerHTML = this._ninjaVersionString; + } + } + } + }, + draw: { + enumerable: false, + value: function() { + } + }, + + show: { + value: function() { + document.addEventListener("mousedown", this, true); + var popup = this.application._alertPopup, about; + if(!popup) { + popup = Popup.create(); + this._popup = popup; + + popup.modal = true; + this.application._alertPopup = popup; + + about = AboutBox.create(); + popup.content = about; + } + popup.show(); + } + } +}); -- cgit v1.2.3