From: <j-...@us...> - 2010-01-05 13:01:56
|
Revision: 4205 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=4205&view=rev Author: j-b-m Date: 2010-01-05 12:49:11 +0000 (Tue, 05 Jan 2010) Log Message: ----------- Fix problem with font color in titles Modified Paths: -------------- trunk/kdenlive/src/titlewidget.cpp Modified: trunk/kdenlive/src/titlewidget.cpp =================================================================== --- trunk/kdenlive/src/titlewidget.cpp 2010-01-05 12:22:50 UTC (rev 4204) +++ trunk/kdenlive/src/titlewidget.cpp 2010-01-05 12:49:11 UTC (rev 4205) @@ -668,6 +668,24 @@ QColor color = fontColorButton->color(); color.setAlpha(textAlpha->value()); tt->setDefaultTextColor(color); + + QTextCursor cur(tt->document()); + cur.select(QTextCursor::Document); + QTextBlockFormat format = cur.blockFormat(); + QTextCharFormat cformat = cur.charFormat(); + QColor outlineColor = textOutlineColor->color(); + outlineColor.setAlpha(textOutlineAlpha->value()); + double outlineWidth = textOutline->value() / 10.0; + + if (outlineWidth > 0.0) { + tt->setData(101, outlineWidth); + tt->setData(102, outlineColor); + cformat.setTextOutline(QPen(outlineColor, outlineWidth)); + } + cformat.setForeground(QBrush(color)); + cur.setCharFormat(cformat); + cur.setBlockFormat(format); + tt->setTextCursor(cur); tt->setZValue(m_count++); setCurrentItem(tt); } @@ -804,10 +822,9 @@ buttonUnder->setChecked(font.underline()); setFontBoxWeight(font.weight()); - QColor color = i->defaultTextColor(); QTextCursor cursor(i->document()); cursor.select(QTextCursor::Document); - color = cursor.charFormat().foreground().color(); + QColor color = cursor.charFormat().foreground().color(); fontColorButton->setColor(color); textAlpha->setValue(color.alpha()); @@ -1322,7 +1339,8 @@ } if (!item) return; //if (item->textCursor().selection ().isEmpty()) - QTextCursor cur = item->textCursor(); + QTextCursor cur(item->document()); + cur.select(QTextCursor::Document); QTextBlockFormat format = cur.blockFormat(); if (buttonAlignLeft->isChecked() || buttonAlignCenter->isChecked() || buttonAlignRight->isChecked()) { item->setTextWidth(item->boundingRect().width()); @@ -1334,27 +1352,19 @@ item->setTextWidth(-1); } - { - item->setFont(font); - if (outlineWidth > 0.0) { - item->setData(101, outlineWidth); - item->setData(102, outlineColor); - QTextCursor cursor(item->document()); - cursor.select(QTextCursor::Document); - QTextCharFormat format; - format.setTextOutline(QPen(outlineColor, outlineWidth)); - format.setForeground(QBrush(color)); - cursor.mergeCharFormat(format); - } else { - item->setDefaultTextColor(color); - } - cur.select(QTextCursor::Document); - cur.setBlockFormat(format); - item->setTextCursor(cur); - cur.clearSelection(); - item->setTextCursor(cur); - + item->setFont(font); + QTextCharFormat cformat = cur.charFormat(); + if (outlineWidth > 0.0) { + item->setData(101, outlineWidth); + item->setData(102, outlineColor); + cformat.setTextOutline(QPen(outlineColor, outlineWidth)); } + cformat.setForeground(QBrush(color)); + cur.setCharFormat(cformat); + cur.setBlockFormat(format); + item->setTextCursor(cur); + cur.clearSelection(); + item->setTextCursor(cur); } void TitleWidget::rectChanged() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |