本文整理汇总了C++中KnobChoicePtr::getCurrentEntry方法的典型用法代码示例。如果您正苦于以下问题:C++ KnobChoicePtr::getCurrentEntry方法的具体用法?C++ KnobChoicePtr::getCurrentEntry怎么用?C++ KnobChoicePtr::getCurrentEntry使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KnobChoicePtr
的用法示例。
在下文中一共展示了KnobChoicePtr::getCurrentEntry方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: tr
void
KnobGuiChoice::updateGUI()
{
///we don't use setCurrentIndex because the signal emitted by combobox will call onCurrentIndexChanged and
///change the internal value of the knob again...
///The slot connected to onCurrentIndexChanged is reserved to catch user interaction with the combobox.
///This function is called in response to an internal change.
KnobChoicePtr knob = _knob.lock();
if (!knob) {
return;
}
ChoiceOption activeEntry = knob->getCurrentEntry();
QString activeEntryLabel;
if (!activeEntry.label.empty()) {
activeEntryLabel = QString::fromUtf8(activeEntry.label.c_str());
} else {
activeEntryLabel = QString::fromUtf8(activeEntry.id.c_str());
}
if ( !activeEntry.id.empty() ) {
bool activeIndexPresent = knob->isActiveEntryPresentInEntries(getView());
if (!activeIndexPresent) {
QString error = tr("The value %1 no longer exists in the menu").arg(activeEntryLabel);
getKnobGui()->setWarningValue( KnobGui::eKnobWarningChoiceMenuOutOfDate, NATRON_NAMESPACE::convertFromPlainText(error, NATRON_NAMESPACE::WhiteSpaceNormal) );
} else {
getKnobGui()->setWarningValue( KnobGui::eKnobWarningChoiceMenuOutOfDate, QString() );
}
}
if ( _comboBox->isCascading() || activeEntry.id.empty() ) {
_comboBox->setCurrentIndex( knob->getValue(), false );
} else {
ensureUnknownChocieIsNotInternalPlaneID(activeEntryLabel);
_comboBox->setCurrentIndexFromLabel( activeEntryLabel, false /*emitSignal*/ );
}
}