void PreviewContentWidget::renderNoPreview(QPainter &p)
    {
        const auto nothingToRender = (!isPlaceholderVisible() && !TextControl_);
        if (nothingToRender)
        {
            return;
        }

        if (!isPlaceholderVisible())
        {
            prepareTextGeometry();

            const QSize newSize(
                width(),
                getTextBubbleSize().height()
            );

            if (newSize != LastSize_)
            {
                setFixedSize(newSize);

                LastSize_ = newSize;
            }

            return;
        }

        updateWidgetSize();

        renderPreloader(p);
    }
    void PreviewContentWidget::renderPreview(QPainter &p)
    {
        if (Preview_.isNull())
        {
            renderNoPreview(p);

            return;
        }

        const auto imageRect = updateWidgetSize();

        p.save();

        p.drawPixmap(imageRect, Preview_);

        if (isSelected())
        {
            const QBrush brush(Utils::getSelectionColor());
            p.fillRect(imageRect, brush);
        }

        p.restore();
    }
示例#3
0
void DkCamControls::resizeEvent(QResizeEvent *event) {
	updateWidgetSize();
	QWidget::resizeEvent(event);
}