summaryrefslogtreecommitdiffstats
path: root/addon-sdk/source/examples/ui-button-apis
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /addon-sdk/source/examples/ui-button-apis
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'addon-sdk/source/examples/ui-button-apis')
-rw-r--r--addon-sdk/source/examples/ui-button-apis/lib/main.js39
-rw-r--r--addon-sdk/source/examples/ui-button-apis/package.json10
-rw-r--r--addon-sdk/source/examples/ui-button-apis/tests/test-main.js29
3 files changed, 78 insertions, 0 deletions
diff --git a/addon-sdk/source/examples/ui-button-apis/lib/main.js b/addon-sdk/source/examples/ui-button-apis/lib/main.js
new file mode 100644
index 000000000..f0ae3dd6c
--- /dev/null
+++ b/addon-sdk/source/examples/ui-button-apis/lib/main.js
@@ -0,0 +1,39 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+"use strict";
+
+var data = require('sdk/self').data;
+var tabs = require('sdk/tabs');
+var { notify } = require('sdk/notifications');
+var { ActionButton, ToggleButton } = require('sdk/ui');
+
+var icon = 'chrome://mozapps/skin/extensions/extensionGeneric.svg';
+exports.icon = icon;
+
+// your basic action button
+var action = ActionButton({
+ id: 'test-action-button',
+ label: 'Action Button',
+ icon: icon,
+ onClick: function (state) {
+ notify({
+ title: "Action!",
+ text: "This notification was triggered from an action button!",
+ });
+ }
+});
+exports.actionButton = action;
+
+var toggle = ToggleButton({
+ id: 'test-toggle-button',
+ label: 'Toggle Button',
+ icon: icon,
+ onClick: function (state) {
+ notify({
+ title: "Toggled!",
+ text: "The current state of the button is " + state.checked,
+ });
+ }
+});
+exports.toggleButton = toggle;
diff --git a/addon-sdk/source/examples/ui-button-apis/package.json b/addon-sdk/source/examples/ui-button-apis/package.json
new file mode 100644
index 000000000..83cf7f6ff
--- /dev/null
+++ b/addon-sdk/source/examples/ui-button-apis/package.json
@@ -0,0 +1,10 @@
+{
+ "name": "ui-button-apis",
+ "title": "Australis Button API Examples",
+ "id": "ui-button-apis@mozilla.org",
+ "description": "A Button API example",
+ "author": "jeff@canuckistani.ca (Jeff Griffiths | @canuckistani)",
+ "license": "MPL-2.0",
+ "version": "0.1.1",
+ "main": "./lib/main.js"
+}
diff --git a/addon-sdk/source/examples/ui-button-apis/tests/test-main.js b/addon-sdk/source/examples/ui-button-apis/tests/test-main.js
new file mode 100644
index 000000000..49bdc863a
--- /dev/null
+++ b/addon-sdk/source/examples/ui-button-apis/tests/test-main.js
@@ -0,0 +1,29 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+"use strict";
+
+try {
+ // CFX use case..
+ var { actionButton, toggleButton, icon } = require("main");
+}
+catch (e) {
+ // JPM use case..
+ let mainURI = "../lib/main";
+ var { actionButton, toggleButton, icon } = require(mainURI);
+}
+var self = require("sdk/self");
+
+exports.testActionButton = function(assert) {
+ assert.equal(actionButton.id, "test-action-button", "action button id is correct");
+ assert.equal(actionButton.label, "Action Button", "action button label is correct");
+ assert.equal(actionButton.icon, icon, "action button icon is correct");
+}
+
+exports.testToggleButton = function(assert) {
+ assert.equal(toggleButton.id, "test-toggle-button", "toggle button id is correct");
+ assert.equal(toggleButton.label, "Toggle Button", "toggle button label is correct");
+ assert.equal(toggleButton.icon, icon, "toggle button icon is correct");
+}
+
+require("sdk/test").run(exports);