本文整理汇总了C++中InfoBoxData::SetTitle方法的典型用法代码示例。如果您正苦于以下问题:C++ InfoBoxData::SetTitle方法的具体用法?C++ InfoBoxData::SetTitle怎么用?C++ InfoBoxData::SetTitle使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类InfoBoxData
的用法示例。
在下文中一共展示了InfoBoxData::SetTitle方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
void
UpdateInfoBoxNextDistance(InfoBoxData &data)
{
const Waypoint* way_point = protected_task_manager != NULL
? protected_task_manager->GetActiveWaypoint()
: NULL;
// Set title
if (!way_point)
data.SetTitle(_("WP Dist"));
else
data.SetTitle(way_point->name.c_str());
// use proper non-terminal next task stats
const NMEAInfo &basic = CommonInterface::Basic();
const TaskStats &task_stats = CommonInterface::Calculated().task_stats;
const GeoVector &vector_remaining = task_stats.current_leg.vector_remaining;
if (!task_stats.task_valid || !vector_remaining.IsValid()) {
data.SetInvalid();
return;
}
// Set Value
data.SetValueFromDistance(vector_remaining.distance);
data.SetValueColor(task_stats.inside_oz ? 3 : 0);
if (basic.track_available) {
Angle bd = vector_remaining.bearing - basic.track;
data.SetCommentFromBearingDifference(bd);
} else
data.SetCommentInvalid();
}
示例2:
void
UpdateInfoBoxAltitudeNav(InfoBoxData &data)
{
const MoreData &basic = CommonInterface::Basic();
if (!basic.NavAltitudeAvailable()) {
data.SetInvalid();
if (basic.pressure_altitude_available)
data.SetComment(_("no QNH"));
return;
}
const ComputerSettings &settings_computer = CommonInterface::GetComputerSettings();
if (basic.baro_altitude_available &&
settings_computer.features.nav_baro_altitude_enabled)
data.SetTitle(InfoBoxFactory::GetCaption(InfoBoxFactory::e_H_Baro));
else
data.SetTitle(InfoBoxFactory::GetCaption(InfoBoxFactory::e_HeightGPS));
data.SetValueFromAltitude(basic.nav_altitude);
data.SetCommentFromAlternateAltitude(basic.nav_altitude);
}
示例3:
/*
* The NextArrow infobox contains an arrow pointing at the next waypoint.
* This function updates the text fields in the infobox.
*/
void
InfoBoxContentNextArrow::Update(InfoBoxData &data)
{
// use proper non-terminal next task stats
const NMEAInfo &basic = CommonInterface::Basic();
const TaskStats &task_stats = CommonInterface::Calculated().task_stats;
const GeoVector &vector_remaining = task_stats.current_leg.vector_remaining;
// Check if data is valid
bool distance_valid = task_stats.task_valid && vector_remaining.IsValid();
bool angle_valid = distance_valid && basic.track_available;
// Set title. Use waypoint name if available.
const Waypoint *way_point = protected_task_manager != nullptr
? protected_task_manager->GetActiveWaypoint()
: nullptr;
if (!way_point)
data.SetTitle(_("Next arrow"));
else
data.SetTitle(way_point->name.c_str());
// Set value
if (angle_valid)
data.SetCustom(); // Enables OnCustomPaint
else
data.SetInvalid();
// Set comment
if (distance_valid)
data.SetCommentFromDistance(vector_remaining.distance);
else
data.SetCommentInvalid();
}
示例4: SetVSpeed
void
InfoBoxContentMacCready::Update(InfoBoxData &data)
{
const ComputerSettings &settings_computer =
CommonInterface::GetComputerSettings();
data.SetTitle(settings_computer.task.auto_mc ? _("MC AUTO") : _("MC MANUAL"));
SetVSpeed(data, settings_computer.polar.glide_polar_task.GetMC());
const CommonStats &common_stats = CommonInterface::Calculated().common_stats;
data.SetCommentFromSpeed(common_stats.V_block, false);
}