StarObject::StarObject( double r, double d, float m, const QString &n, const QString &n2, const QString &sptype, double pmra, double pmdec, double par, bool mult, bool var, int hd ) : SkyObject (SkyObject::STAR, r, d, m, n, n2, QString()), PM_RA(pmra), PM_Dec(pmdec), Parallax(par), Multiplicity(mult), Variability(var) { QByteArray spt = sptype.toAscii(); SpType[0] = spt[0]; SpType[1] = spt[1]; QString lname; if ( hasName() ) { lname = n; if ( hasName2() )lname += " (" + gname() + ')'; } else if ( hasName2() ) { lname = gname(); //If genetive name exists, but no primary name, set primary name = genetive name. setName( gname() ); } HD = hd; setLongName(lname); updateID = updateNumID = 0; }
void StarObject::setNames( QString name, QString name2 ) { QString lname; setName( name ); setName2( name2 ); if ( hasName() ) { lname = name; if ( hasName2() ) lname += " (" + gname() + ')'; } else if ( hasName2() ) lname = gname(); setLongName(lname); }
void SkyObject::setLongName( const QString &longname ) { delete LongName; if ( longname.isEmpty() ) { if ( hasName() ) LongName = new QString(translatedName()); else if ( hasName2() ) LongName = new QString(*Name2); else LongName = 0; } else { LongName = new QString(longname); } }