123
121
painter.setBrush( QBrush( palette().color(QPalette::ButtonText), Qt::HorPattern ) );
124
122
painter.setPen( palette().color(QPalette::Dark) );
126
qreal columnWidth = (textArea.width() + (d->columns.columnSpacing * zoom)) / d->columns.columns;
127
int width = qRound(columnWidth - d->columns.columnSpacing * zoom);
128
for ( int i = 0; i < d->columns.columns; ++i )
129
painter.drawRect( qRound(textArea.x() + i * columnWidth), textArea.y(), width, textArea.height());
125
if (d->columns.columnData.isEmpty()) {
126
qreal columnWidth = (textArea.width() + (d->columns.gapWidth * zoom)) / d->columns.count;
127
int width = qRound(columnWidth - d->columns.gapWidth * zoom);
128
for ( int i = 0; i < d->columns.count; ++i )
129
painter.drawRect( qRound(textArea.x() + i * columnWidth), textArea.y(), width, textArea.height());
131
qreal totalRelativeWidth = 0.0;
132
foreach(const KoColumns::ColumnDatum &cd, d->columns.columnData) {
133
totalRelativeWidth += cd.relativeWidth;
135
int relativeColumnXOffset = 0;
136
for (int i = 0; i < d->columns.count; i++) {
137
const KoColumns::ColumnDatum &columnDatum = d->columns.columnData.at(i);
138
const qreal columnWidth = textArea.width() * columnDatum.relativeWidth / totalRelativeWidth;
139
const qreal columnXOffset = textArea.width() * relativeColumnXOffset / totalRelativeWidth;
141
painter.drawRect( qRound(textArea.x() + columnXOffset + columnDatum.leftMargin * zoom),
142
qRound(textArea.y() + columnDatum.topMargin * zoom),
143
qRound(columnWidth - (columnDatum.leftMargin + columnDatum.rightMargin) * zoom),
144
qRound(textArea.height() - (columnDatum.topMargin + columnDatum.bottomMargin) * zoom));
146
relativeColumnXOffset += columnDatum.relativeWidth;
133
151
void KoPagePreviewWidget::setPageLayout(const KoPageLayout &layout)