本文整理汇总了C++中WndProperty::SetVisible方法的典型用法代码示例。如果您正苦于以下问题:C++ WndProperty::SetVisible方法的具体用法?C++ WndProperty::SetVisible怎么用?C++ WndProperty::SetVisible使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WndProperty
的用法示例。
在下文中一共展示了WndProperty::SetVisible方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SetWaypointValues
static void SetWaypointValues(bool first=false) {
WndProperty* wp;
wp = (WndProperty*)wf->FindByName(TEXT("prpAATType"));
if (wp) {
DataFieldEnum* dfe;
dfe = (DataFieldEnum*)wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Cylinder"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Sector"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
}
dfe->SetDetachGUI(true); // disable call to OnAATEnabled
dfe->Set(Task[twItemIndex].AATType);
dfe->SetDetachGUI(false);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATCircleRadius"));
if (wp) {
wp->GetDataField()->SetAsFloat(lround(Task[twItemIndex].AATCircleRadius
*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->SetVisible(Task[twItemIndex].AATType==0);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATSectorRadius"));
if (wp) {
wp->GetDataField()->SetAsFloat(lround(Task[twItemIndex].AATSectorRadius
*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->SetVisible(Task[twItemIndex].AATType>0);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATStartRadial"));
if (wp) {
wp->GetDataField()->SetAsFloat(Task[twItemIndex].AATStartRadial);
wp->SetVisible(Task[twItemIndex].AATType>0);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATFinishRadial"));
if (wp) {
wp->GetDataField()->SetAsFloat(Task[twItemIndex].AATFinishRadial);
wp->SetVisible(Task[twItemIndex].AATType>0);
wp->RefreshDisplay();
}
}
示例2: dlgBasicSettingsShowModal
void dlgBasicSettingsShowModal(void){
char filename[MAX_PATH];
LocalPathS(filename, TEXT("dlgBasicSettings.xml")); // no worry missing _L, it is unused anyway
if (!InfoBoxLayout::landscape)
wf = dlgLoadFromXML(CallBackTable, filename, hWndMainWindow, TEXT("IDR_XML_BASICSETTINGS_L"));
else
wf = dlgLoadFromXML(CallBackTable, filename, hWndMainWindow, TEXT("IDR_XML_BASICSETTINGS"));
WndProperty* wp;
// BallastTimerActive = false;
if (wf) {
wf->SetTimerNotify(OnTimerNotify);
((WndButton *)wf->FindByName(TEXT("buttonDumpBallast")))->SetVisible(!BallastTimerActive);
((WndButton *)wf->FindByName(TEXT("buttonStopDump")))->SetVisible(BallastTimerActive);
wp = (WndProperty*)wf->FindByName(TEXT("prpAltitude"));
if (wp) {
wp->GetDataField()->SetAsFloat(
Units::ToUserAltitude(GPS_INFO.BaroAltitude));
wp->GetDataField()->SetUnits(Units::GetAltitudeName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpBallastLitres"));
if (wp) {
wp->GetDataField()-> SetAsFloat(GlidePolar::BallastLitres);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpWingLoading"));
if (wp) {
if (GlidePolar::WingLoading>0.1) {
wp->GetDataField()-> SetAsFloat(GlidePolar::WingLoading);
} else {
wp->SetVisible(false);
}
wp->RefreshDisplay();
}
if (CALCULATED_INFO.Flying) {
wp = (WndProperty*)wf->FindByName(TEXT("prpQNH"));
if (wp) {
wp->GetDataField()->SetDisplayFormat(_T("%.0f"));
}
}
wf->ShowModal();
delete wf;
}
wf = NULL;
}
示例3: UpdateTextboxProp
static void UpdateTextboxProp(void)
{
WndProperty *wp;
wp = (WndProperty*)wf->FindByName(TEXT("prpText"));
if (wp) {
wp->SetText(edittext);
if(WaypointKeyRed)
wp->SetCaption(MsgToken(949));
else
wp->SetCaption(TEXT("Text"));
}
wp = (WndProperty*)wf->FindByName(TEXT("prpUnit"));
if(wp && wKeyboardPopupWndProperty) {
DataField* pField = wKeyboardPopupWndProperty->GetDataField();
if(pField) {
wp->SetCaption(pField->GetUnits());
wp->RefreshDisplay();
wp->Redraw();
}
}
{
WndButton *wb;
if(WaypointKeyRed)
{
ReduceKeysByWaypointList();
wb = (WndButton*) wf->FindByName(TEXT("prpDate")); if(wb != NULL) wb->SetVisible(false);
wb = (WndButton*) wf->FindByName(TEXT("prpTime")); if(wb != NULL) wb->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpMatch"));; if(wp != NULL) wp->SetVisible(WaypointKeyRed);
/*
CharUpper(szLanguageFile);
BOOL bGerChar = false;
if( _tcscmp(szLanguageFile,_T("GERMAN.LNG"))==0)
bGerChar = true;
wb = (WndButton*) wf->FindByName(TEXT("prpAe")); if(wb != NULL) wb->SetVisible(bGerChar);
wb = (WndButton*) wf->FindByName(TEXT("prpOe")); if(wb != NULL) wb->SetVisible(bGerChar);
wb = (WndButton*) wf->FindByName(TEXT("prpUe")); if(wb != NULL) wb->SetVisible(bGerChar);
*/
}
}
示例4: SetValues
static void SetValues(bool first=false) {
WndProperty* wp;
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskFinishLine"));
if (wp) {
DataFieldEnum* dfe;
dfe = (DataFieldEnum*)wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Cylinder"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Line"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "FAI Sector"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
}
dfe->Set(FinishLine);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskFinishRadius"));
if (wp) {
wp->GetDataField()->SetAsFloat(lround(FinishRadius*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskStartLine"));
if (wp) {
DataFieldEnum* dfe;
dfe = (DataFieldEnum*)wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Cylinder"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Line"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "FAI Sector"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
}
dfe->SetDetachGUI(true); // disable call to OnAATEnabled
dfe->Set(StartLine);
dfe->SetDetachGUI(false);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskStartRadius"));
if (wp) {
wp->GetDataField()->SetAsFloat(lround(StartRadius*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskFAISector"));
if (wp) {
// 110223 CAN ANYONE PLEASE CHECK WHAT THE HACK IS A BOOL FOR BILL GATES? BECAUSE IF FALSE IS -1 THEN
// WE HAVE MANY PROBLEMS! I THINK IT IS TIME TO GO BACK TO bool AND GET RID OF MS BOOLS!!
wp->SetVisible(AATEnabled==0);
DataFieldEnum* dfe;
dfe = (DataFieldEnum*)wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Cylinder"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "FAI Sector"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
dfe->addEnumText(gettext(TEXT("DAe 0.5/10")));
}
dfe->SetDetachGUI(true); // disable call to OnAATEnabled
dfe->Set(SectorType);
dfe->SetDetachGUI(false);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskSectorRadius"));
if (wp) {
wp->SetVisible(AATEnabled==0);
wp->GetDataField()->SetAsFloat(lround(SectorRadius*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAutoAdvance"));
if (wp) {
DataFieldEnum* dfe;
dfe = (DataFieldEnum*)wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Manual"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ "Auto"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Arm"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Arm start"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Arm TPs"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
}
dfe->Set(AutoAdvance);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpMinTime"));
//.........这里部分代码省略.........
示例5: dlgTaskOverviewShowModal
void dlgTaskOverviewShowModal(int Idx){
UpLimit = 0;
LowLimit = 0;
ItemIndex = Idx; //-1;
showAdvanced = false;
wf = dlgLoadFromXML(CallBackTable, ScreenLandscape ? IDR_XML_TASKOVERVIEW_L : IDR_XML_TASKOVERVIEW_P);
if (!wf) return;
WndButton *wb = (WndButton*)wf->FindByName(TEXT("cmdTimegates"));
if (wb) wb->SetVisible(false);
if (ISPARAGLIDER) {
if (PGOptimizeRoute) AATEnabled=true; // force it on
EnableMultipleStartPoints=false;
if (wb) wb->SetVisible(true);
wb = (WndButton*)wf->FindByName(TEXT("cmdDelete"));
if (wb) wb->SetVisible(false);
}
UpdateCaption();
wfAdvanced = ((WndFrame *)wf->FindByName(TEXT("frmAdvanced")));
wTaskList = (WndListFrame*)wf->FindByName(TEXT("frmTaskList"));
wTaskList->SetBorderKind(BORDERLEFT);
wTaskList->SetEnterCallback(OnTaskListEnter);
wTaskListEntry = (WndOwnerDrawFrame*)wf->FindByName(TEXT("frmTaskListEntry"));
wTaskListEntry->SetCanFocus(true);
WndProperty* wp;
wp = (WndProperty*)wf->FindByName(TEXT("prpFile"));
if (wp) {
wp->SetVisible(false);
DataFieldFileReader* dfe = static_cast<DataFieldFileReader*>(wp->GetDataField());
if(dfe) {
dfe->ScanDirectoryTop(_T(LKD_TASKS), _T("*" LKS_TSK));
#ifdef OLDTASK_COMPAT
dfe->ScanDirectoryTop(_T(LKD_TASKS), _T("*" LKS_OLD_TSK));
#endif
dfe->ScanDirectoryTop(_T(LKD_TASKS), _T("*" LKS_WP_CUP));
dfe->ScanDirectoryTop(_T(LKD_TASKS), _T("*" LKS_WP_GPX));
}
wp->RefreshDisplay();
}
UpdateFilePointer();
// initialise and turn on the display
OverviewRefreshTask();
UpdateAdvanced();
wTaskList->SetItemIndexPos(Idx);
wTaskList->Redraw();
wTaskListEntry->SetFocus();
wf->ShowModal();
// now retrieve back the properties...
RefreshTask();
delete wf;
wf = NULL;
}
示例6: UpdateValuesTask
static void UpdateValuesTask(void) {
WndProperty *wp;
TCHAR Temp[80];
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskTime"));
Units::TimeToText(Temp, (int)AATTaskLength*60);
if (wp) {
if (!AATEnabled) {
wp->SetVisible(false);
} else {
wp->SetText(Temp);
}
}
double dd = CALCULATED_INFO.TaskTimeToGo;
if (CALCULATED_INFO.TaskStartTime>0.0) {
dd += GPS_INFO.Time-CALCULATED_INFO.TaskStartTime;
}
wp = (WndProperty*)wf->FindByName(TEXT("prpETETime"));
if (wp) {
Units::TimeToText(Temp, (int)dd);
wp->SetText(Temp);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpRemainingTime"));
if (wp) {
Units::TimeToText(Temp, (int)CALCULATED_INFO.TaskTimeToGo);
wp->SetText(Temp);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskDistance"));
if (wp) {
_stprintf(Temp, TEXT("%.0f %s"), DISTANCEMODIFY*
(CALCULATED_INFO.TaskDistanceToGo
+CALCULATED_INFO.TaskDistanceCovered),
Units::GetDistanceName());
wp->SetText(Temp);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpRemainingDistance"));
if (wp) {
if (AATEnabled) {
_stprintf(Temp, TEXT("%.0f %s"),
DISTANCEMODIFY*CALCULATED_INFO.AATTargetDistance,
Units::GetDistanceName());
} else {
_stprintf(Temp, TEXT("%.0f %s"),
DISTANCEMODIFY*CALCULATED_INFO.TaskDistanceToGo,
Units::GetDistanceName());
}
wp->SetText(Temp);
}
double d1 =
(CALCULATED_INFO.TaskDistanceToGo
+CALCULATED_INFO.TaskDistanceCovered)/dd;
// TODO bug: this fails for OLC
wp = (WndProperty*)wf->FindByName(TEXT("prpEstimatedSpeed"));
if (wp) {
_stprintf(Temp, TEXT("%.0f %s"),
TASKSPEEDMODIFY*d1, Units::GetTaskSpeedName());
wp->SetText(Temp);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAverageSpeed"));
if (wp) {
_stprintf(Temp, TEXT("%.0f %s"),
TASKSPEEDMODIFY*CALCULATED_INFO.TaskSpeed,
Units::GetTaskSpeedName());
wp->SetText(Temp);
}
}
示例7: SetWaypointValues
static void SetWaypointValues(bool first=false) {
WndProperty* wp;
wp = (WndProperty*)wf->FindByName(TEXT("prpAATType"));
if (wp) {
DataField* dfe = wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Cylinder"
dfe->addEnumText(MsgToken(210));
// LKTOKEN [email protected]_ = "Sector"
dfe->addEnumText(MsgToken(590));
if(DoOptimizeRoute()) {
// Conical ESS
dfe->addEnumText(MsgToken(2175));
// Circle ESS
dfe->addEnumText(MsgToken(2189));
}
}
dfe->SetDetachGUI(true); // disable call to OnAATEnabled
dfe->Set(Task[twItemIndex].AATType);
dfe->SetDetachGUI(false);
wp->RefreshDisplay();
}
WindowControl* pFrm = wf->FindByName(_T("frmCircle"));
if(pFrm) {
pFrm->SetVisible((Task[twItemIndex].AATType==0) || (Task[twItemIndex].AATType==3));
}
pFrm = wf->FindByName(_T("frmSector"));
if(pFrm) {
pFrm->SetVisible(Task[twItemIndex].AATType==1);
}
pFrm = wf->FindByName(_T("frmCone"));
if(pFrm) {
pFrm->SetVisible(Task[twItemIndex].AATType==2);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATCircleRadius"));
if (wp) {
wp->GetDataField()->SetAsFloat(round(Task[twItemIndex].AATCircleRadius
*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATSectorRadius"));
if (wp) {
wp->GetDataField()->SetAsFloat(round(Task[twItemIndex].AATSectorRadius
*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATStartRadial"));
if (wp) {
wp->GetDataField()->SetAsFloat(Task[twItemIndex].AATStartRadial);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATFinishRadial"));
if (wp) {
wp->GetDataField()->SetAsFloat(Task[twItemIndex].AATFinishRadial);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpOutCircle"));
if (wp) {
DataField* dfe = wp->GetDataField();
if (dfe) {
if (first) {
// LKTOKEN [email protected]_ = "Enter"
dfe->addEnumText(MsgToken(2145));
// LKTOKEN [email protected]_ = "Exit"
dfe->addEnumText(MsgToken(2146));
}
dfe->Set(Task[twItemIndex].OutCircle);
}
wp->SetVisible(DoOptimizeRoute());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpConeSlope"));
if (wp) {
wp->GetDataField()->SetAsFloat(Task[twItemIndex].PGConeSlope);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpConeBase"));
if (wp) {
wp->GetDataField()->SetAsFloat(Task[twItemIndex].PGConeBase*ALTITUDEMODIFY);
wp->GetDataField()->SetUnits(Units::GetAltitudeName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpConeRadius"));
if (wp) {
wp->GetDataField()->SetAsFloat(round(Task[twItemIndex].PGConeBaseRadius
*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
//.........这里部分代码省略.........
示例8: RedrawSampleFont
static void RedrawSampleFont(void)
{
if (!IsInitialized) {
return;
}
WndProperty* wp;
wp = (WndProperty*)wf->FindByName(TEXT("prpFontName"));
if(wp) {
_tcsncpy(NewLogFont.lfFaceName,wp->GetDataField()->GetAsString(), LF_FACESIZE-1);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpFontHeight"));
if(wp) {
NewLogFont.lfHeight = wp->GetDataField()->GetAsInteger();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpFontWeight"));
if(wp) {
NewLogFont.lfWeight= wp->GetDataField()->GetAsInteger();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpFontItalic"));
if(wp) {
if ( wp->GetDataField()->GetAsInteger() ) {
NewLogFont.lfItalic=1;
}
else {
NewLogFont.lfItalic=0;
}
}
wp = (WndProperty*)wf->FindByName(TEXT("prpFontPitchAndFamily"));
if (wp) {
NewLogFont.lfPitchAndFamily=wp->GetDataField()->GetAsInteger();
}
//KT
wp = (WndProperty*)wf->FindByName(TEXT("prpFontTrueType"));
if(wp) {
if ( wp->GetDataField()->GetAsBoolean() )
{
wp = (WndProperty*)wf->FindByName(TEXT("prpFontRenderer"));
if(wp)
{
if ( wp->GetDataField()->GetAsInteger() )
{
NewLogFont.lfQuality = CLEARTYPE_COMPAT_QUALITY;
}
else
{
NewLogFont.lfQuality = ANTIALIASED_QUALITY;
}
}
}
else {
NewLogFont.lfQuality = NONANTIALIASED_QUALITY;
}
}
DeleteObject(NewFont);
NewFont = CreateFontIndirect (&NewLogFont);
if ( _tcscmp(OriginalFontRegKey, szRegistryFontMapWindowBoldFont) == 0 ) {
wf->SetFont(NewFont);
wf->SetTitleFont(NewFont);
wf->SetVisible(false);
wf->SetVisible(true);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpFontSample"));
if(wp) {
if (GetObjectType(NewFont) == OBJ_FONT) {
wp->SetFont(NewFont);
wp->SetCaption(TEXT("<AbCdEfGh1234>"));
wp->SetVisible(false);
wp->SetVisible(true);
wp->RefreshDisplay();
}
else {
wp->SetCaption(TEXT("Error Creating Font!"));
wp->RefreshDisplay();
}
}
}
示例9: SetUnits
static void SetUnits(void) {
WndProperty* wp;
switch (Units::CoordinateFormat) {
case 0: // ("DDMMSS");
case 1: // ("DDMMSS.ss");
wp = (WndProperty*)wf->FindByName(TEXT("prpLongitudeDDDD"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLatitudeDDDD"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLongitudemmm"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLatitudemmm"));
if (wp) {
wp->SetVisible(false);
}
break;
case 2: // ("DDMM.mmm");
wp = (WndProperty*)wf->FindByName(TEXT("prpLongitudeDDDD"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLatitudeDDDD"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLongitudeS"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLatitudeS"));
if (wp) {
wp->SetVisible(false);
}
break;
case 3: // ("DD.dddd");
wp = (WndProperty*)wf->FindByName(TEXT("prpLongitudeM"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLatitudeM"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLongitudeS"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLatitudeS"));
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLongitudemmm"));
// hide this field for DD.dddd format
if (wp) {
wp->SetVisible(false);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpLatitudemmm"));
if (wp) {
wp->SetVisible(false);
}
break;
case 4: // UTM (" 32T 123456 1234567 ")
break;
}
}
示例10: RefreshCalculator
static void RefreshCalculator(void) {
WndProperty* wp;
task.RefreshTask(XCSoarInterface::SettingsComputer());
RefreshTaskStatistics();
// update outputs
wp = (WndProperty*)wf->FindByName(TEXT("prpAATEst"));
if (wp) {
double dd = XCSoarInterface::Calculated().TaskTimeToGo;
if ((XCSoarInterface::Calculated().TaskStartTime>0.0)&&(XCSoarInterface::Calculated().Flying)) {
dd += XCSoarInterface::Basic().Time-XCSoarInterface::Calculated().TaskStartTime;
}
dd= min(24.0*60.0,dd/60.0);
wp->GetDataField()->SetAsFloat(dd);
wp->RefreshDisplay();
}
// update outputs
wp = (WndProperty*)wf->FindByName(TEXT("prpAATTime"));
if (wp) {
if (!task.getSettings().AATEnabled) {
wp->SetVisible(false);
} else {
wp->GetDataField()->SetAsFloat(task.getSettings().AATTaskLength);
}
wp->RefreshDisplay();
}
double d1 = (XCSoarInterface::Calculated().TaskDistanceToGo
+XCSoarInterface::Calculated().TaskDistanceCovered);
if (task.getSettings().AATEnabled && (d1==0.0)) {
d1 = XCSoarInterface::Calculated().AATTargetDistance;
}
wp = (WndProperty*)wf->FindByName(TEXT("prpDistance"));
if (wp) {
wp->GetDataField()->SetAsFloat(d1*DISTANCEMODIFY);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpMacCready"));
if (wp) {
wp->GetDataField()->SetUnits(Units::GetVerticalSpeedName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpEffectiveMacCready"));
if (wp) {
wp->GetDataField()->SetUnits(Units::GetVerticalSpeedName());
wp->GetDataField()->SetAsFloat(emc*LIFTMODIFY);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpRange"));
if (wp) {
wp->RefreshDisplay();
if (!task.getSettings().AATEnabled || !task.ValidTaskPoint(task.getActiveIndex()+1)) {
wp->SetVisible(false);
} else {
wp->SetVisible(true);
}
wp->GetDataField()->SetAsFloat(Range*100.0);
wp->RefreshDisplay();
}
double v1;
if (XCSoarInterface::Calculated().TaskTimeToGo>0) {
v1 = XCSoarInterface::Calculated().TaskDistanceToGo/
XCSoarInterface::Calculated().TaskTimeToGo;
} else {
v1 = 0;
}
wp = (WndProperty*)wf->FindByName(TEXT("prpSpeedRemaining"));
if (wp) {
wp->GetDataField()->SetAsFloat(v1*TASKSPEEDMODIFY);
wp->GetDataField()->SetUnits(Units::GetTaskSpeedName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpSpeedAchieved"));
if (wp) {
wp->GetDataField()->SetAsFloat(XCSoarInterface::Calculated().TaskSpeed*TASKSPEEDMODIFY);
wp->GetDataField()->SetUnits(Units::GetTaskSpeedName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpCruiseEfficiency"));
if (wp) {
wp->GetDataField()->SetAsFloat(cruise_efficiency*100.0);
wp->RefreshDisplay();
}
}
示例11: dlgBasicSettingsShowModal
void dlgBasicSettingsShowModal(void){
SHOWTHREAD(_T("dlgBasicSettingsShowModal"));
char filename[MAX_PATH];
if (!ScreenLandscape) {
LocalPathS(filename, TEXT("dlgBasicSettings_L.xml"));
wf = dlgLoadFromXML(CallBackTable, filename, hWndMainWindow, TEXT("IDR_XML_BASICSETTINGS_L"));
} else {
LocalPathS(filename, TEXT("dlgBasicSettings.xml"));
wf = dlgLoadFromXML(CallBackTable, filename, hWndMainWindow, TEXT("IDR_XML_BASICSETTINGS"));
}
WndProperty* wp;
// BallastTimerActive = false;
if (wf) {
wf->SetTimerNotify(OnTimerNotify);
((WndButton *)wf->FindByName(TEXT("buttonDumpBallast")))->SetVisible(!BallastTimerActive);
((WndButton *)wf->FindByName(TEXT("buttonStopDump")))->SetVisible(BallastTimerActive);
wp = (WndProperty*)wf->FindByName(TEXT("prpAltitude"));
if (wp) {
wp->GetDataField()->SetAsFloat(
Units::ToUserAltitude(GPS_INFO.BaroAltitude));
wp->GetDataField()->SetUnits(Units::GetAltitudeName());
if (!GPS_INFO.BaroAltitudeAvailable) wp->SetReadOnly(1);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpBallastPercent"));
if (wp) {
if (WEIGHTS[2]==0) wp->SetReadOnly(1);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpBallastLitres"));
if (wp) {
if (WEIGHTS[2]>0) {
wp->GetDataField()-> SetAsFloat(GlidePolar::BallastLitres);
} else {
wp->SetReadOnly(1);
}
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpWingLoading"));
if (wp) {
if (GlidePolar::WingLoading>0.1) {
if (ISPARAGLIDER) {
wp->GetDataField()->SetDisplayFormat(_T("%.1f kg/m2"));
wp->GetDataField()->SetEditFormat(_T("%1.1f"));
wp->GetDataField()->SetMin(1.0);
wp->GetDataField()->SetStep(0.1);
}
if (ISGLIDER) {
wp->GetDataField()->SetDisplayFormat(_T("%.1f kg/m2"));
wp->GetDataField()->SetEditFormat(_T("%1.1f"));
wp->GetDataField()->SetMin(5.0);
wp->GetDataField()->SetStep(0.5);
}
wp->GetDataField()-> SetAsFloat(GlidePolar::WingLoading);
} else {
wp->SetVisible(false);
}
wp->RefreshDisplay();
}
if (CALCULATED_INFO.Flying) {
wp = (WndProperty*)wf->FindByName(TEXT("prpQNH"));
if (wp) {
wp->GetDataField()->SetDisplayFormat(_T("%.0f"));
}
}
wf->ShowModal();
delete wf;
}
wf = NULL;
}
示例12: RefreshCalculator
static void RefreshCalculator(void) {
WndProperty* wp;
RefreshTask();
RefreshTaskStatistics();
target_point = max(target_point,ActiveWayPoint);
bool nodisplay = !AATEnabled
|| (target_point==0)
|| !ValidTaskPoint(target_point+1);
if (btnMove) {
if (nodisplay) {
btnMove->SetVisible(false);
TargetMoveMode = false;
} else {
btnMove->SetVisible(true);
}
}
nodisplay = nodisplay || TargetMoveMode;
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskPoint"));
if (wp) {
if (TargetMoveMode) {
wp->SetVisible(false);
} else {
wp->SetVisible(true);
}
}
WindowControl* wc = (WindowControl*)wf->FindByName(TEXT("btnOK"));
if (wc) {
if (TargetMoveMode) {
wc->SetVisible(false);
} else {
wc->SetVisible(true);
}
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATTargetLocked"));
if (wp) {
wp->GetDataField()->Set(Task[target_point].AATTargetLocked);
wp->RefreshDisplay();
if (nodisplay) {
wp->SetVisible(false);
} else {
wp->SetVisible(true);
}
}
wp = (WndProperty*)wf->FindByName(TEXT("prpRange"));
if (wp) {
wp->GetDataField()->SetAsFloat(Range*100.0);
wp->RefreshDisplay();
if (nodisplay) {
wp->SetVisible(false);
} else {
wp->SetVisible(true);
}
}
wp = (WndProperty*)wf->FindByName(TEXT("prpRadial"));
if (wp) {
wp->GetDataField()->SetAsFloat(Radial);
wp->RefreshDisplay();
if (nodisplay) {
wp->SetVisible(false);
} else {
wp->SetVisible(true);
}
}
// update outputs
double dd = CALCULATED_INFO.TaskTimeToGo;
if ((CALCULATED_INFO.TaskStartTime>0.0)&&(CALCULATED_INFO.Flying)) {
dd += GPS_INFO.Time-CALCULATED_INFO.TaskStartTime;
}
dd= min(24.0*60.0,dd/60.0);
wp = (WndProperty*)wf->FindByName(TEXT("prpAATEst"));
if (wp) {
wp->GetDataField()->SetAsFloat(dd);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAATDelta"));
if (wp) {
wp->GetDataField()->SetAsFloat(dd-AATTaskLength);
if (AATEnabled) {
wp->SetVisible(true);
} else {
wp->SetVisible(false);
}
wp->RefreshDisplay();
}
double v1;
if (CALCULATED_INFO.TaskTimeToGo>0) {
v1 = CALCULATED_INFO.TaskDistanceToGo/
CALCULATED_INFO.TaskTimeToGo;
} else {
//.........这里部分代码省略.........
示例13: RefreshCalculator
static void RefreshCalculator(void) {
WndProperty* wp;
RefreshTask();
RefreshTaskStatistics();
// update outputs
wp = (WndProperty*)wf->FindByName(TEXT("prpAATEst"));
if (wp) {
double dd = CALCULATED_INFO.TaskTimeToGo;
if ((CALCULATED_INFO.TaskStartTime>0.0)&&(CALCULATED_INFO.Flying)) {
dd += GPS_INFO.Time-CALCULATED_INFO.TaskStartTime;
}
dd= min(24.0*60.0,dd/60.0);
wp->GetDataField()->SetAsFloat(dd);
wp->RefreshDisplay();
}
// update outputs
wp = (WndProperty*)wf->FindByName(TEXT("prpAATTime"));
if (wp) {
if (!AATEnabled) {
wp->SetVisible(false);
} else {
wp->GetDataField()->SetAsFloat(AATTaskLength);
}
wp->RefreshDisplay();
}
double d1 = (CALCULATED_INFO.TaskDistanceToGo
+CALCULATED_INFO.TaskDistanceCovered);
if (AATEnabled && (d1==0.0)) {
d1 = CALCULATED_INFO.AATTargetDistance;
}
wp = (WndProperty*)wf->FindByName(TEXT("prpDistance"));
if (wp) {
wp->GetDataField()->SetAsFloat(d1*DISTANCEMODIFY);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpMacCready"));
if (wp) {
wp->GetDataField()->SetUnits(Units::GetVerticalSpeedName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpEffectiveMacCready"));
if (wp) {
wp->GetDataField()->SetUnits(Units::GetVerticalSpeedName());
wp->GetDataField()->SetAsFloat(emc*LIFTMODIFY);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpRange"));
if (wp) {
wp->RefreshDisplay();
if (!AATEnabled || !ValidTaskPoint(ActiveWayPoint+1)) {
wp->SetVisible(false);
} else {
wp->SetVisible(true);
}
wp->GetDataField()->SetAsFloat(Range*100.0);
wp->RefreshDisplay();
}
double v1;
if (CALCULATED_INFO.TaskTimeToGo>0) {
v1 = CALCULATED_INFO.TaskDistanceToGo/
CALCULATED_INFO.TaskTimeToGo;
} else {
v1 = 0;
}
wp = (WndProperty*)wf->FindByName(TEXT("prpSpeedRemaining"));
if (wp) {
wp->GetDataField()->SetAsFloat(v1*TASKSPEEDMODIFY);
wp->GetDataField()->SetUnits(Units::GetTaskSpeedName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpSpeedAchieved"));
if (wp) {
wp->GetDataField()->SetAsFloat(CALCULATED_INFO.TaskSpeed*TASKSPEEDMODIFY);
wp->GetDataField()->SetUnits(Units::GetTaskSpeedName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpCruiseEfficiency"));
if (wp) {
wp->GetDataField()->SetAsFloat(cruise_efficiency*100.0);
wp->RefreshDisplay();
}
}
示例14: UpdateValuesTask
static void UpdateValuesTask(void) {
WndProperty *wp;
TCHAR Temp[80];
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskTime"));
Units::TimeToText(Temp, (int)task.getSettings().AATTaskLength*60);
if (wp) {
if (!task.getSettings().AATEnabled) {
wp->SetVisible(false);
} else {
wp->SetText(Temp);
}
}
double dd = XCSoarInterface::Calculated().TaskTimeToGo;
if (XCSoarInterface::Calculated().TaskStartTime>0.0) {
dd += XCSoarInterface::Basic().Time-XCSoarInterface::Calculated().TaskStartTime;
}
wp = (WndProperty*)wf->FindByName(TEXT("prpETETime"));
if (wp) {
Units::TimeToText(Temp, (int)dd);
wp->SetText(Temp);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpRemainingTime"));
if (wp) {
Units::TimeToText(Temp, (int)XCSoarInterface::Calculated().TaskTimeToGo);
wp->SetText(Temp);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskDistance"));
if (wp) {
_stprintf(Temp, TEXT("%.0f %s"), DISTANCEMODIFY*
(XCSoarInterface::Calculated().TaskDistanceToGo
+XCSoarInterface::Calculated().TaskDistanceCovered),
Units::GetDistanceName());
wp->SetText(Temp);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpRemainingDistance"));
if (wp) {
if (task.getSettings().AATEnabled) {
_stprintf(Temp, TEXT("%.0f %s"),
DISTANCEMODIFY*XCSoarInterface::Calculated().AATTargetDistance,
Units::GetDistanceName());
} else {
_stprintf(Temp, TEXT("%.0f %s"),
DISTANCEMODIFY*XCSoarInterface::Calculated().TaskDistanceToGo,
Units::GetDistanceName());
}
wp->SetText(Temp);
}
double d1 =
(XCSoarInterface::Calculated().TaskDistanceToGo
+XCSoarInterface::Calculated().TaskDistanceCovered)/dd;
// TODO bug: this fails for OLC
wp = (WndProperty*)wf->FindByName(TEXT("prpEstimatedSpeed"));
if (wp) {
_stprintf(Temp, TEXT("%.0f %s"),
TASKSPEEDMODIFY*d1, Units::GetTaskSpeedName());
wp->SetText(Temp);
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAverageSpeed"));
if (wp) {
_stprintf(Temp, TEXT("%.0f %s"),
TASKSPEEDMODIFY*XCSoarInterface::Calculated().TaskSpeed,
Units::GetTaskSpeedName());
wp->SetText(Temp);
}
}
示例15: SetValues
static void SetValues(bool first=false) {
WndProperty* wp;
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskFinishLine"));
if (wp) {
DataFieldEnum* dfe;
dfe = (DataFieldEnum*)wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Cylinder"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Line"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "FAI Sector"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
}
dfe->Set(FinishLine);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskFinishRadius"));
if (wp) {
wp->GetDataField()->SetAsFloat(lround(FinishRadius*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskStartLine"));
if (wp) {
DataFieldEnum* dfe;
dfe = (DataFieldEnum*)wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Cylinder"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Line"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "FAI Sector"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
}
dfe->SetDetachGUI(true); // disable call to OnAATEnabled
dfe->Set(StartLine);
dfe->SetDetachGUI(false);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskStartRadius"));
if (wp) {
wp->GetDataField()->SetAsFloat(lround(StartRadius*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskFAISector"));
if (wp) {
wp->SetVisible(AATEnabled==0);
DataFieldEnum* dfe;
dfe = (DataFieldEnum*)wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Cylinder"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "FAI Sector"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
dfe->addEnumText(gettext(TEXT("DAe 0.5/10")));
}
dfe->SetDetachGUI(true); // disable call to OnAATEnabled
dfe->Set(SectorType);
dfe->SetDetachGUI(false);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpTaskSectorRadius"));
if (wp) {
wp->SetVisible(AATEnabled==0);
wp->GetDataField()->SetAsFloat(lround(SectorRadius*DISTANCEMODIFY*DISTANCE_ROUNDING)/DISTANCE_ROUNDING);
wp->GetDataField()->SetUnits(Units::GetDistanceName());
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpAutoAdvance"));
if (wp) {
DataFieldEnum* dfe;
dfe = (DataFieldEnum*)wp->GetDataField();
if (first) {
// LKTOKEN [email protected]_ = "Manual"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ "Auto"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Arm"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
// LKTOKEN [email protected]_ = "Arm start"
dfe->addEnumText(gettext(TEXT("[email protected]_")));
}
dfe->Set(AutoAdvance);
wp->RefreshDisplay();
}
wp = (WndProperty*)wf->FindByName(TEXT("prpMinTime"));
if (wp) {
wp->SetVisible(AATEnabled>0);
wp->GetDataField()->SetAsFloat(AATTaskLength);
wp->RefreshDisplay();
//.........这里部分代码省略.........