void StarGeneratorInterface::UpdateEpochControls() { int year, month, day; double dummy; JDToComplexTime( year, month, day, dummy, instance.epoch ); GUI->EpochYear_SpinBox.SetValue( year ); GUI->EpochMonth_SpinBox.SetValue( month ); GUI->EpochDay_SpinBox.SetValue( day ); }
bool FileDataCacheItem::FromString( const String& s ) { path.Clear(); lastUsed = 0; time.year = 0; StringList tokens; s.Break( tokens, char16_type( '\n' ) ); for ( StringList::const_iterator i = tokens.Begin(); i != tokens.End(); ) { if ( *i == "path" ) { if ( ++i == tokens.End() ) return false; path = i->Trimmed(); ++i; } else if ( *i == "lastUsed" ) { if ( ++i == tokens.End() ) return false; lastUsed = i->ToUInt(); ++i; } else if ( *i == "time" ) { if ( tokens.End() - i < 3 ) return false; int y, m, d; double f; JDToComplexTime( y, m, d, f, i[1].ToUInt()+0.5 ); unsigned t = i[2].ToUInt(); time.year = y; time.month = m; time.day = d; time.milliseconds = t - 86399000; time.hour = TruncI( (t = TruncI( t/1000.0 ))/3600.0 ); time.minute = TruncI( (t -= time.hour*3600)/60.0 ); time.second = t - time.minute*60; i += 3; } else if ( *i == "data" ) { if ( !GetDataFromTokens( tokens ) ) return false; ++i; } else { ++i; } } return !path.IsEmpty() && lastUsed > 0 && time.year > 0 && ValidateData(); }