<rdf:RDF
    xmlns:s='http://snipsnap.org/rdf/snip-schema#'
    xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
    xml:base='http://javatelnet.org/rdf'>
    <s:Snip rdf:about='http://javatelnet.org/rdf#Plugin+ButtonBar'
         s:cUser='leo'
         s:oUser=''
         s:mUser='leo'>
        <s:name>Plugin ButtonBar</s:name>
        <s:content>The button bar plugin is very useful to provide short cuts to common keystrokes and to define the unique look and feel of your installation.&#xA;&#xA;To use this plugin simply set the property as defined below in the configuration file ([applet.conf]) and __write a button definition file__. How the buttons are defined is described in the lower part of this page.&#xA; &#xA;{table}&#xA;Property | Documentation&#xA;ButtonBar.setup | The URL of the configuration file for the button bar. The file contains the definitions for look and function of the buttons and input fields.&#xA;ButtonBar.clearFields | If set to ~~true~~ the input fields will be cleared after return or pressing a button that reads the field.&#xA;{table}&#xA;&#xA;__ButtonBar Setup__&#xA; &#xA;The setup file contains definitions for buttons, input fields and keywords for the layout of the components. Possible keywords are:&#xA;&#xA;{table}&#xA;Keyword | Description&#xA;__button__ text command | Create a new button with the displayed text that sends the command upon pressing that button. The command can be a simple piece of text or a function call as described below this table. \\ If the command contains whitespace characters enclose it in quotation characters (&quot;).&#xA;__label__ text | Create a new textlabel with the displayed text. The text needs to be enclosed with quotation characters (&quot;) if it contains whitespace.&#xA;__input__ name length command text | Create a new input field with the specified name and length. Optionally you can provide a command and an initial text that is used to initialize the input field. If the text contains whitespace characters enclose it in quotation characters (&quot;). You can leave the command out. Then the input field will not allow pressing return to send its text!&#xA;__break__ |  If that keyword appears just after a button or input field that field will stretch the rest of the line and the next button or input field will be placed in the next line.&#xA;__stretch__ |  If that keyword appears just after a button or input field it will cause that button or input field to take as much space in that line as it can get.&#xA;__choice__ label1 value1 label2 value2 ... | This keyword starts the definition of a choicebox selector. It is followed by label/value pairs where the label is put into the options list of the choicebox and the value will be sent as text (or executed as command) if the item is selected. \\ It is best if the first label / value pair is left, since you cannot easily select it.&#xA;{table}&#xA;&#xA;Buttons may contain function calls as ~~command~~ to issue commands like, __connect__, __disconnect__ or to __exit__ the application. A function call looks like:&#xA;&#xA;To connect to the remote host on pressing a button you would define&#xA;the following button&#xA;{code}&#xA;button Connect &quot;\\\\\\$connect(\\\\\\@host@,\\\\\\@port@)&quot;&#xA;input  host 20 &quot;myhost.mydomain.com&quot;&#xA;input  port 4  &quot;23&quot; &#xA;{code}&#xA;This will create a button labeled &quot;Connect&quot; which will call the&#xA;function connect with the arguments taken from the input fields&#xA;&quot;host&quot; and &quot;port&quot;. If you do not encluse the command in quotation characters you do not have to type two backspaces (\\\\\\).&#xA;&#xA;{table}&#xA;Function | Documentation&#xA;\\\\\\$connect(\\\\\\@host@,\\\\\\@port@) | Connect the applet to host and port.&#xA;\\\\\\$disconnect() | Disconnect the applet.&#xA;\\\\\\$exit()|  Exit the application. Applets cannot exit the application (due to security reasons).&#xA;\\\\\\$break() | Send a TELNET IAC BREAK command. This is usually needed  by telnet controllable embedded devices, like CISCO routers and similar.&#xA;{table}&#xA;&#xA;If you want to have a look at an example, see [buttonbar.conf].</s:content>
        <s:mTime>2005-11-10 14:23:54.7</s:mTime>
        <s:cTime>2005-11-10 14:23:54.7</s:cTime>
        <s:comments
             rdf:type='http://www.w3.org/1999/02/22-rdf-syntax-ns#Bag'/>
        <s:snipLinks>
            <rdf:Bag>
                <rdf:li rdf:resource='http://javatelnet.org/rdf#Configuring Plugins'/>
                <rdf:li rdf:resource='http://javatelnet.org/rdf#Configuring+Plugins'/>
                <rdf:li rdf:resource='#applet.conf'/>
                <rdf:li rdf:resource='#snipsnap-search'/>
                <rdf:li rdf:resource='#snipsnap-index'/>
                <rdf:li rdf:resource='#buttonbar.conf'/>
                <rdf:li rdf:resource='http://javatelnet.org/rdf#Plugin Socket'/>
                <rdf:li rdf:resource='http://javatelnet.org/rdf#Plugin Shell'/>
                <rdf:li rdf:resource='http://javatelnet.org/rdf#Plugin buttonBar'/>
                <rdf:li rdf:resource='http://javatelnet.org/rdf#Plugin MudConnector'/>
                <rdf:li rdf:resource='http://javatelnet.org/rdf#Using the Connection Relay Daemon'/>
                <rdf:li rdf:resource='#leo'/>
                <rdf:li rdf:resource='#jordi'/>
                <rdf:li rdf:resource='http://javatelnet.org/rdf#Docs and Tutorials'/>
            </rdf:Bag>
        </s:snipLinks>
        <s:attachments
             rdf:type='http://www.w3.org/1999/02/22-rdf-syntax-ns#Bag'/>
    </s:Snip>
</rdf:RDF>
