public function display()
    {
        if (!$this->visible) {
            return;
        }

        $div_tag = new SwatHtmlTag('div');
        $div_tag->id = $this->id;
        $div_tag->class = $this->getCSSClassString();
        $div_tag->open();

        $label_tag = new SwatHtmlTag('label');
        $label_tag->for = $this->id . '_value';
        $label_tag->open();

        $old_id = $this->id;
        $this->id .= '_value';
        parent::display();
        $this->id = $old_id;

        $span_tag = new SwatHtmlTag('span');
        $span_tag->class = 'swat-check-all-title';
        $span_tag->setContent($this->title, $this->content_type);
        $span_tag->display();

        $label_tag->close();

        if ($this->extended_count > $this->visible_count) {
            $div_tag = new SwatHtmlTag('div');
            $div_tag->id = $this->id . '_extended';
            $div_tag->class = 'swat-hidden swat-extended-check-all';
            $div_tag->open();
            echo $this->getExtendedTitle();
            $div_tag->close();
        }

        $div_tag->close();

        Swat::displayInlineJavaScript($this->getInlineJavaScript());
    }