本文整理汇总了C++中DataFieldEnum::CreateComboList方法的典型用法代码示例。如果您正苦于以下问题:C++ DataFieldEnum::CreateComboList方法的具体用法?C++ DataFieldEnum::CreateComboList怎么用?C++ DataFieldEnum::CreateComboList使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DataFieldEnum
的用法示例。
在下文中一共展示了DataFieldEnum::CreateComboList方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetFocused
void
InfoBoxManager::SetupFocused()
{
int i = GetFocused();
if (i < 0)
return;
const enum mode mode = GetCurrentMode();
int old_type = GetType(i, mode);
/* create a fake WndProperty for dlgComboPicker() */
/* XXX reimplement properly */
DataFieldEnum *dfe = new DataFieldEnum(old_type, NULL);
for (unsigned i = 0; i < InfoBoxFactory::NUM_TYPES; i++)
dfe->addEnumText(gettext(GetTypeDescription(i)));
dfe->Sort(0);
dfe->Set(old_type);
ComboList *list = dfe->CreateComboList();
delete dfe;
/* let the user select */
info_box_combo_list = list;
int result = ComboPicker(XCSoarInterface::main_window, _("InfoBox"), *list,
OnInfoBoxHelp);
if (result < 0) {
delete list;
return;
}
/* was there a modification? */
int new_type = (*list)[result].DataFieldIndex;
delete list;
if (new_type == old_type)
return;
/* yes: apply and save it */
SetType(i, new_type, mode);
DisplayInfoBox();
Profile::SetInfoBoxes(i, GetTypes(i));
}