    @mixin extjs-tool {
        .#{$prefix}tool {
            height: $tool-size;

            img {
                overflow: hidden;

                width: $tool-size;
                height: $tool-size;

                cursor: pointer;

                background-color: transparent;
                background-repeat: no-repeat;
                background-image: theme-background-image($theme-name, 'tools/tool-sprites.gif');

                margin: 0;
            }
        }

        .#{$prefix}panel-header-horizontal,
        .#{$prefix}window-header-horizontal {
            .#{$prefix}tool {
                    margin-left: 2px;
            }
        }

        .#{$prefix}panel-header-vertical,
        .#{$prefix}window-header-vertical {
            .#{$prefix}tool {
                    margin-top: 2px;
            }
        }

        .#{$prefix}panel-header-vertical,
        .#{$prefix}window-header-vertical {
            // this assumes that there will only ever be one tool that shows at the top of a vertical header (the collapse tool)
            // we should revisit this if it is decided that we want to support multiple tools at the top
            .#{$prefix}tool-top {
                margin: 0 0 4px;
            }
        }

    .#{$prefix}tool-placeholder {
            visibility: hidden;
        }

        .#{$prefix}tool-toggle {
            background-position: 0 -60px;
        }

        .#{$prefix}tool-over {
            .#{$prefix}tool-toggle {
                background-position: -15px -60px;
            }
        }

        .#{$prefix}panel-collapsed,
        .#{$prefix}fieldset-collapsed {
            .#{$prefix}tool-toggle {
                background-position: 0 -75px;
            }

            .#{$prefix}tool-over {
                .#{$prefix}tool-toggle {
                    background-position: -15px -75px;
                }
            }
        }

        .#{$prefix}tool-close {
            background-position: 0 0;
        }

        .#{$prefix}tool-minimize {
            background-position: 0 -15px;
        }

        .#{$prefix}tool-maximize {
            background-position: 0 -30px;
        }

        .#{$prefix}tool-restore {
            background-position: 0 -45px;
        }

        .#{$prefix}tool-gear {
            background-position: 0 -90px;
        }

        .#{$prefix}tool-prev {
            background-position: 0 -105px;
        }

        .#{$prefix}tool-next {
            background-position: 0 -120px;
        }

        .#{$prefix}tool-pin {
            background-position: 0 -135px;
        }

        .#{$prefix}tool-unpin {
            background-position: 0 -150px;
        }

        .#{$prefix}tool-right {
            background-position: 0 -165px;
        }

        .#{$prefix}tool-left {
            background-position: 0 -180px;
        }

        .#{$prefix}tool-help {
            background-position: 0 -300px;
        }

        .#{$prefix}tool-save {
            background-position: 0 -285px;
        }

        .#{$prefix}tool-search {
            background-position: 0 -270px;
        }

        .#{$prefix}tool-minus {
            background-position: 0 -255px;
        }

        .#{$prefix}tool-plus {
            background-position: 0 -240px;
        }

        .#{$prefix}tool-refresh {
            background-position: 0 -225px;
        }

        .#{$prefix}tool-up {
            background-position: 0 -210px;
        }

        .#{$prefix}tool-down {
            background-position: 0 -195px;
        }

        .#{$prefix}tool-collapse {
            background-position: 0 -345px;
        }

        .#{$prefix}tool-expand {
            background-position: 0 -330px;
        }

        .#{$prefix}tool-print {
            background-position: 0 -315px;
        }

        .#{$prefix}tool-expand-bottom,
        .#{$prefix}tool-collapse-bottom {
            background-position: 0 -195px;
        }

        .#{$prefix}tool-expand-top,
        .#{$prefix}tool-collapse-top {
            background-position: 0 -210px;
        }

        .#{$prefix}tool-expand-left,
        .#{$prefix}tool-collapse-left {
            background-position: 0 -180px;
        }

        .#{$prefix}tool-expand-right,
        .#{$prefix}tool-collapse-right {
            background-position: 0 -165px;
        }

        .#{$prefix}tool-over {
            .#{$prefix}tool-close {
                background-position: -15px 0;
            }

            .#{$prefix}tool-minimize {
                background-position: -15px -15px;
            }

            .#{$prefix}tool-maximize {
                background-position: -15px -30px;
            }

            .#{$prefix}tool-restore {
                background-position: -15px -45px;
            }

            .#{$prefix}tool-gear {
                background-position: -15px -90px;
            }

            .#{$prefix}tool-prev {
                background-position: -15px -105px;
            }

            .#{$prefix}tool-next {
                background-position: -15px -120px;
            }

            .#{$prefix}tool-pin {
                background-position: -15px -135px;
            }

            .#{$prefix}tool-unpin {
                background-position: -15px -150px;
            }

            .#{$prefix}tool-right {
                background-position: -15px -165px;
            }

            .#{$prefix}tool-left {
                background-position: -15px -180px;
            }

            .#{$prefix}tool-down {
                background-position: -15px -195px;
            }

            .#{$prefix}tool-up {
                background-position: -15px -210px;
            }

            .#{$prefix}tool-refresh {
                background-position: -15px -225px;
            }

            .#{$prefix}tool-plus {
                background-position: -15px -240px;
            }

            .#{$prefix}tool-minus {
                background-position: -15px -255px;
            }

            .#{$prefix}tool-search {
                background-position: -15px -270px;
            }

            .#{$prefix}tool-save {
                background-position: -15px -285px;
            }

            .#{$prefix}tool-help {
                background-position: -15px -300px;
            }

            .#{$prefix}tool-print {
                background-position: -15px -315px;
            }

            .#{$prefix}tool-expand {
                background-position: -15px -330px;
            }

            .#{$prefix}tool-collapse {
                background-position: -15px -345px;
            }

            .#{$prefix}tool-expand-bottom,
            .#{$prefix}tool-collapse-bottom {
                background-position: -15px -195px;
            }

            .#{$prefix}tool-expand-top,
            .#{$prefix}tool-collapse-top {
                background-position: -15px -210px;
            }

            .#{$prefix}tool-expand-left,
            .#{$prefix}tool-collapse-left {
                background-position: -15px -180px;
            }

            .#{$prefix}tool-expand-right,
            .#{$prefix}tool-collapse-right {
                background-position: -15px -165px;
            }
        }
    }