DHTMLX Docs & Samples Explorer

Button Creation

Position
Text
Image
Add?
Source
<script type="text/javascript" src="../../codebase/dhtmlxcommon.js"></script>
<script type="text/javascript" src="../../codebase/dhtmlxtoolbar.js"></script>
<link rel="stylesheet" type="text/css" href="../../codebase/skins/dhtmlxtoolbar_dhx_skyblue.css"></link>
 
<div id="toolbarObj"></div>
<div style="margin-top: 20px;">
<table cellspacing="0" cellpadding="2" border="0">
    <tr>
        <td style="padding-right: 5px;">
            Position
        </td>
        <td>
            <input id="txt1" type="text" value="1" style="width: 30px;">
        </td>
    </tr>
    <tr>
        <td style="padding-right: 5px;">
            Text
        </td>
        <td>
            <input id="txt2" type="text" value="Button">
        </td>
    </tr>
    <tr>
        <td style="padding-right: 5px;">
            Image
        </td>
        <td>
            <table cellspacing="0" cellpadding="2" border="0">
                <tr>
                    <td><img id="new"     onclick="changeImage(this);" src="../common/imgs/new.gif"     style="border: #707070 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                    <td><img id="open"    onclick="changeImage(this);" src="../common/imgs/open.gif"    style="border: #E0E0E0 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                    <td><img id="save"    onclick="changeImage(this);" src="../common/imgs/save.gif"    style="border: #E0E0E0 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                    <td><img id="save_as" onclick="changeImage(this);" src="../common/imgs/save_as.gif" style="border: #E0E0E0 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                    <td><img id="undo"    onclick="changeImage(this);" src="../common/imgs/undo.gif"    style="border: #E0E0E0 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                    <td><img id="redo"    onclick="changeImage(this);" src="../common/imgs/redo.gif"    style="border: #E0E0E0 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                    <td><img id="cut"     onclick="changeImage(this);" src="../common/imgs/cut.gif"     style="border: #E0E0E0 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                    <td><img id="copy"    onclick="changeImage(this);" src="../common/imgs/copy.gif"    style="border: #E0E0E0 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                    <td><img id="paste"   onclick="changeImage(this);" src="../common/imgs/paste.gif"   style="border: #E0E0E0 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                    <td><img id="print"   onclick="changeImage(this);" src="../common/imgs/print.gif"   style="border: #E0E0E0 1px solid; width: 18px; height: 18px; cursor: pointer;"></td>
                </tr>
            </table>
        </td>
    </tr>
    <tr>
        <td style="padding-right: 5px;">
            Add?
        </td>
        <td>
            <input type="button" value="Add" onclick="add();">
        </td>
    </tr>
</table>
<table cellspacing="0" cellpadding="2" border="0" style="margin-top: 10px;">
    <tr>
        <td style="padding-right: 5px;"><select id="sel"></select></td>
        <td><input type="button" value="Remove" onclick="remove();"></td>
    </tr>
</table>
</div>
<script>
var sel = document.getElementById("sel");
var toolbar = new dhtmlXToolbarObject("toolbarObj");
toolbar.setIconsPath("../common/imgs/");
toolbar.loadXML("../common/dhxtoolbar_button.xml?etc=" + new Date().getTime(), updateList);
var img = "new";
var lastImg = document.getElementById("new");
function changeImage(imgObj) {
    img = imgObj.id;
    imgObj.style.border = "#707070 1px solid";
    lastImg.style.border = "#E0E0E0 1px solid";
    lastImg = imgObj;
}
function add() {
    var id = String(new Date().getTime());
    var pos = Number(document.getElementById("txt1").value);
    var text = String(document.getElementById("txt2").value);
    toolbar.addButton(id, pos, (text.length > 0 ? text: null), img + ".gif", null);
    updateList();
}
function getId() {
    var id = sel.options[sel.selectedIndex].value;
    return id;
}
function remove() {
    if (sel.options.length == 0) {
        return;
    }
    toolbar.removeItem(getId());
    updateList();
}
function updateList() {
    sel.options.length = 0;
    toolbar.forEachItem(function(itemId) {
        if (toolbar.getType(itemId) == "button") {
            sel.options.add(new Option("'" + itemId + "' (" + toolbar.getItemText(itemId) + ")", itemId));
        }
    });
}
</script>