function installBtns(btnClass) {
    $$('.' + btnClass).each(function(item) {
        var span = Element.wrap(item, 'span', {style:'white-space:nowrap', id:item.id + '-btn'});
        item.insert({ before: '<a id="' + item.id + '-bl">&#xa0;</a>'});
        item.insert({ after: '<a id="' + item.id + '-br">&#xa0;</a>'});

        var left = $(item.id + '-bl');
        var middle = item;
        var right = $(item.id + '-br');

        [left, right].each(function(i2) {
            $w(item.className).each(function(i3) {
                i2.addClassName(i3);
            });
            i2.href = item.href;
        });

        left.addClassName(btnClass);
        right.addClassName(btnClass);

        left.addClassName(btnClass + '-left');
        middle.addClassName(btnClass + '-middle');
        right.addClassName(btnClass + '-right');

        if (item.hasClassName('btn-focused')) {
            left.addClassName(btnClass + '-left-focused');
            middle.addClassName(btnClass + '-middle-focused');
            right.addClassName(btnClass + '-right-focused');
        }
        else if (item.hasClassName('btn-inactive')) {
            left.addClassName(btnClass + '-left-inactive');
            middle.addClassName(btnClass + '-middle-inactive');
            right.addClassName(btnClass + '-right-inactive');
        }

        [left, item, right].each(function(i2) {
            ['mouseover', 'mouseup'].each(function(e) {
                i2.observe(e, function(event) {
                    if (!i2.hasClassName('btn-inactive')) {
                        [btnClass + '-left-hover', btnClass + '-left-down'].each(function(i) {
                            left.removeClassName(i);
                        });
                        [btnClass + '-middle-hover', btnClass + '-middle-down'].each(function(i) {
                            middle.removeClassName(i);
                        });
                        [btnClass + '-right-hover', btnClass + '-right-down'].each(function(i) {
                            right.removeClassName(i);
                        });

                        left.addClassName(btnClass + '-left-hover');
                        middle.addClassName(btnClass + '-middle-hover');
                        right.addClassName(btnClass + '-right-hover');
                    }
                });
            });

            i2.observe('mousedown', function(event) {
                [btnClass + '-left-hover', btnClass + '-left-down'].each(function(i) {
                    left.removeClassName(i);
                });
                [btnClass + '-middle-hover', btnClass + '-middle-down'].each(function(i) {
                    middle.removeClassName(i);
                });
                [btnClass + '-right-hover', btnClass + '-right-down'].each(function(i) {
                    right.removeClassName(i);
                });

                left.addClassName(btnClass + '-left-down');
                middle.addClassName(btnClass + '-middle-down');
                right.addClassName(btnClass + '-right-down');
            });

            i2.observe('mouseout', function(event) {
                [btnClass + '-left-hover', btnClass + '-left-down'].each(function(i) {
                    left.removeClassName(i);
                });
                [btnClass + '-middle-hover', btnClass + '-middle-down'].each(function(i) {
                    middle.removeClassName(i);
                });
                [btnClass + '-right-hover', btnClass + '-right-down'].each(function(i) {
                    right.removeClassName(i);
                });
            });
        });
    });
}
