summaryrefslogtreecommitdiffstats
path: root/dgbuilder/nodes/99-sample.html.demo
diff options
context:
space:
mode:
Diffstat (limited to 'dgbuilder/nodes/99-sample.html.demo')
-rw-r--r--dgbuilder/nodes/99-sample.html.demo79
1 files changed, 79 insertions, 0 deletions
diff --git a/dgbuilder/nodes/99-sample.html.demo b/dgbuilder/nodes/99-sample.html.demo
new file mode 100644
index 00000000..4dcc8ba5
--- /dev/null
+++ b/dgbuilder/nodes/99-sample.html.demo
@@ -0,0 +1,79 @@
+<!--
+ Copyright 2014 IBM Corp.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!-- Sample html file that corresponds to the 99-sample.js file -->
+<!-- This creates and configures the onscreen elements of the node -->
+
+<!-- If you use this as a template, update the copyright with your own name. -->
+
+<!-- First, the content of the edit dialog is defined. -->
+
+<script type="text/x-red" data-template-name="sample">
+ <!-- data-template-name identifies the node type this is for -->
+
+ <!-- Each of the following divs creates a field in the edit dialog. -->
+ <!-- Generally, there should be an input for each property of the node. -->
+ <!-- The for and id attributes identify the corresponding property -->
+ <!-- (with the 'node-input-' prefix). -->
+ <!-- The available icon classes are defined Twitter Bootstrap glyphicons -->
+ <div class="form-row">
+ <label for="node-input-topic"><i class="fa fa-tasks"></i> Topic</label>
+ <input type="text" id="node-input-topic" placeholder="Topic">
+ </div>
+
+ <br/>
+ <!-- By convention, most nodes have a 'name' property. The following div -->
+ <!-- provides the necessary field. Should always be the last option -->
+ <div class="form-row">
+ <label for="node-input-name"><i class="fa fa-tag"></i> Name</label>
+ <input type="text" id="node-input-name" placeholder="Name">
+ </div>
+</script>
+
+
+<!-- Next, some simple help text is provided for the node. -->
+<script type="text/x-red" data-help-name="sample">
+ <!-- data-help-name identifies the node type this help is for -->
+ <!-- This content appears in the Info sidebar when a node is selected -->
+ <!-- The first <p> is used as the pop-up tool tip when hovering over a -->
+ <!-- node in the palette. -->
+ <p>Simple sample input node. Just sends a single message when it starts up.
+ This is not very useful.</p>
+ <p>Outputs an object called <b>msg</b> containing <b>msg.topic</b> and
+ <b>msg.payload</b>. msg.payload is a String.</p>
+</script>
+
+<!-- Finally, the node type is registered along with all of its properties -->
+<!-- The example below shows a small subset of the properties that can be set-->
+<script type="text/javascript">
+ RED.nodes.registerType('sample',{
+ category: 'input', // the palette category
+ defaults: { // defines the editable properties of the node
+ name: {value:""}, // along with default values.
+ topic: {value:"", required:true}
+ },
+ inputs:1, // set the number of inputs - only 0 or 1
+ outputs:1, // set the number of outputs - 0 to n
+ // set the icon (held in icons dir below where you save the node)
+ icon: "myicon.png", // saved in icons/myicon.png
+ label: function() { // sets the default label contents
+ return this.name||this.topic||"sample";
+ },
+ labelStyle: function() { // sets the class to apply to the label
+ return this.name?"node_label_italic":"";
+ }
+ });
+</script>