本文整理汇总了C++中KoListLevelProperties::setLabelType方法的典型用法代码示例。如果您正苦于以下问题:C++ KoListLevelProperties::setLabelType方法的具体用法?C++ KoListLevelProperties::setLabelType怎么用?C++ KoListLevelProperties::setLabelType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KoListLevelProperties
的用法示例。
在下文中一共展示了KoListLevelProperties::setLabelType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: save
void ParagraphBulletsNumbers::save(KoParagraphStyle *savingStyle)
{
Q_ASSERT(savingStyle);
KoUnit unit(KoUnit::Centimeter);
const int currentRow = widget.listTypes->currentRow();
KoListStyle::LabelType labelType = m_mapping[currentRow];
if (labelType == KoListStyle::None) {
savingStyle->setListStyle(0);
return;
}
if (savingStyle->listStyle() == 0) {
KoListStyle *listStyle = new KoListStyle(savingStyle);
savingStyle->setListStyle(listStyle);
}
KoListStyle *listStyle = savingStyle->listStyle();
KoListLevelProperties llp = listStyle->levelProperties(widget.depth->value());
llp.setLabelType(labelType);
llp.setLevel(widget.depth->value());
llp.setDisplayLevel(widget.levels->value());
llp.setStartValue(widget.startValue->value());
llp.setListItemPrefix(widget.prefix->text());
llp.setListItemSuffix(widget.suffix->text());
llp.setLetterSynchronization(widget.letterSynchronization->isVisible() && widget.letterSynchronization->isChecked());
if(m_alignmentMode==true) {
llp.setAlignmentMode(true);
switch(widget.labelFollowedBy->currentIndex()) {
case 0: llp.setLabelFollowedBy(KoListStyle::ListTab);
llp.setTabStopPosition(unit.fromUserValue(widget.doubleSpinBox->value()));
break;
case 1: llp.setLabelFollowedBy(KoListStyle::Space);
break;
case 2: llp.setLabelFollowedBy(KoListStyle::Nothing);
break;
default:
Q_ASSERT(false);
}
llp.setMargin(unit.fromUserValue(widget.doubleSpinBox_2->value()));
llp.setTextIndent(unit.fromUserValue(widget.doubleSpinBox_3->value())-unit.fromUserValue(widget.doubleSpinBox_2->value()));
}
if (labelType == KoListStyle::ImageLabelType) {
if (m_data) {
llp.setBulletImage(m_data);
}
llp.setWidth(widget.imageWidth->value());
llp.setHeight(widget.imageHeight->value());
} else if (labelType == KoListStyle::BulletCharLabelType) {
llp.setBulletCharacter((currentRow == m_blankCharIndex) ? QChar() : widget.customCharacter->text().remove('&').at(0));
}
// it is important to not use 45 for BulletCharLabelType as it is also char based
else if (!KoListStyle::isNumberingStyle(labelType)) {
llp.setRelativeBulletSize(45); //for non-numbering bullets the default relative bullet size is 45%(The spec does not say it; we take it)
}
Qt::Alignment align;
switch (widget.alignment->currentIndex()) {
case 0: align = Qt::AlignLeft; break;
case 1: align = Qt::AlignLeft | Qt::AlignAbsolute; break;
case 2: align = Qt::AlignRight | Qt::AlignAbsolute; break;
case 3: align = Qt::AlignCenter; break;
default:
Q_ASSERT(false);
}
llp.setAlignment(align);
if (llp.level() != m_previousLevel)
listStyle->removeLevelProperties(m_previousLevel);
listStyle->setLevelProperties(llp);
}