本文整理汇总了C++中KStars::map方法的典型用法代码示例。如果您正苦于以下问题:C++ KStars::map方法的具体用法?C++ KStars::map怎么用?C++ KStars::map使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KStars
的用法示例。
在下文中一共展示了KStars::map方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: onSlewButtonClicked
void WIView::onSlewButtonClicked()
{
///Slew map to selected sky-object
SkyObject* so = m_CurSoItem->getSkyObject();
KStars* kstars = KStars::Instance();
if (so != 0)
{
kstars->map()->setFocusPoint(so);
kstars->map()->setFocusObject(so);
kstars->map()->setDestination(*kstars->map()->focusPoint());
}
}
示例2: initFlagActions
void KSPopupMenu::initFlagActions( SkyObject *obj ) {
KStars *ks = KStars::Instance();
QList<int> flags = ks->data()->skyComposite()->flags()->getFlagsNearPix( obj, 5 );
if ( flags.size() == 0 ) {
// There is no flag around clicked SkyObject
addAction( i18n( "Add flag..."), ks->map(), SLOT( slotAddFlag() ) );
}
else if( flags.size() == 1) {
// There is only one flag around clicked SkyObject
addAction ( i18n ("Edit flag"), this, SLOT( slotEditFlag() ) );
addAction ( i18n ("Delete flag"), this, SLOT( slotDeleteFlag() ) );
m_CurrentFlagIdx = flags.first();
}
else {
// There are more than one flags around clicked SkyObject - we need to create submenus
QMenu *editMenu = new QMenu ( i18n ( "Edit flag..."), KStars::Instance() );
QMenu *deleteMenu = new QMenu ( i18n ( "Delete flag..."), KStars::Instance() );
connect( editMenu, SIGNAL( triggered(QAction*) ), this, SLOT( slotEditFlag(QAction*) ) );
connect( deleteMenu, SIGNAL( triggered(QAction*) ), this, SLOT( slotDeleteFlag(QAction*) ) );
if ( m_EditActionMapping ) {
delete m_EditActionMapping;
}
if ( m_DeleteActionMapping ) {
delete m_DeleteActionMapping;
}
m_EditActionMapping = new QHash<QAction*, int>;
m_DeleteActionMapping = new QHash<QAction*, int>;
foreach ( int idx, flags ) {
QIcon flagIcon( QPixmap::fromImage( ks->data()->skyComposite()->flags()->image( idx ) ) );
QString flagLabel = ks->data()->skyComposite()->flags()->label( idx );
if ( flagLabel.size() > 35 ) {
flagLabel = flagLabel.left( 35 );
flagLabel.append( "..." );
}
QAction *editAction = new QAction( flagIcon, flagLabel, ks );
editAction->setIconVisibleInMenu( true );
editMenu->addAction( editAction );
m_EditActionMapping->insert( editAction, idx );
QAction *deleteAction = new QAction( flagIcon, flagLabel, ks );
deleteAction->setIconVisibleInMenu( true );
deleteMenu->addAction( deleteAction );
m_DeleteActionMapping->insert( deleteAction, idx);
}
addMenu( editMenu );
addMenu( deleteMenu );
}
示例3: createEmptyMenu
void KSPopupMenu::createEmptyMenu( SkyPoint *nullObj ) {
KStars* ks = KStars::Instance();
SkyObject o( SkyObject::TYPE_UNKNOWN, nullObj->ra(), nullObj->dec() );
o.setAlt( nullObj->alt() );
o.setAz( nullObj->az() );
initPopupMenu( &o, i18n( "Empty sky" ), QString(), QString(), false, false );
addAction( i18nc( "Sloan Digital Sky Survey", "Show SDSS Image" ), ks->map(), SLOT( slotSDSS() ) );
addAction( i18nc( "Digitized Sky Survey", "Show DSS Image" ), ks->map(), SLOT( slotDSS() ) );
}
示例4: createStarMenu
void KSPopupMenu::createStarMenu( StarObject *star ) {
KStars* ks = KStars::Instance();
//Add name, rise/set time, center/track, and detail-window items
QString name;
if( star->name() != "star" ) {
name = star->translatedLongName();
} else {
if( star->getHDIndex() ) {
name = QString( "HD%1" ).arg( QString::number( star->getHDIndex() ) );
} else {
// FIXME: this should be some catalog name too
name = "Star";
}
}
initPopupMenu( star, name, i18n( "star" ), i18n("%1<sup>m</sup>, %2", star->mag(), star->sptype()) );
//If the star is named, add custom items to popup menu based on object's ImageList and InfoList
if ( star->name() != "star" ) {
addLinksToMenu( star );
} else {
addAction( i18nc( "Sloan Digital Sky Survey", "Show SDSS Image" ), ks->map(), SLOT( slotSDSS() ) );
addAction( i18nc( "Digitized Sky Survey", "Show DSS Image" ), ks->map(), SLOT( slotDSS() ) );
}
}
示例5: slotGoto
void ConjunctionsTool::slotGoto() {
int index = m_SortModel->mapToSource( OutputList->currentIndex() ).row(); // Get the number of the line
long double jd = outputJDList.value( index );
KStarsDateTime dt;
KStars *ks = KStars::Instance();
KStarsData *data = KStarsData::Instance();
SkyMap *map = ks->map();
// Show conjunction
data->setLocation( *geoPlace );
dt.setDJD( jd );
data->changeDateTime( dt );
map->setClickedObject( data->skyComposite()->findByName( m_Model->data( m_Model->index( index, 2 ) ).toString() ) );
map->setClickedPoint( map->clickedObject() );
map->slotCenter();
}
示例6: createSatelliteMenu
void KSPopupMenu::createSatelliteMenu( Satellite *satellite ) {
KStars* ks = KStars::Instance();
QString velocity, altitude, range;
velocity.setNum( satellite->velocity() );
altitude.setNum( satellite->altitude() );
range.setNum( satellite->range() );
clear();
addFancyLabel( satellite->name() );
addFancyLabel( satellite->id() );
addFancyLabel( i18n( "satellite" ) );
addFancyLabel( KStarsData::Instance()->skyComposite()->getConstellationBoundary()->constellationName( satellite ) );
addSeparator();
addFancyLabel( i18n( "Velocity: %1 km/s", velocity ), -2 );
addFancyLabel( i18n( "Altitude: %1 km", altitude ), -2 );
addFancyLabel( i18n( "Range: %1 km", range ), -2 );
addSeparator();
//Insert item for centering on object
addAction( i18n( "Center && Track" ), ks->map(), SLOT( slotCenter() ) );
//Insert item for measuring distances
//FIXME: add key shortcut to menu items properly!
addAction( i18n( "Angular Distance To... [" ), ks->map(),
SLOT(slotBeginAngularDistance()) );
addAction( i18n( "Starhop from here to... " ), ks->map(),
SLOT(slotBeginStarHop()) );
//Insert "Add/Remove Label" item
if ( ks->map()->isObjectLabeled( satellite ) )
addAction( i18n( "Remove Label" ), ks->map(), SLOT( slotRemoveObjectLabel() ) );
else
addAction( i18n( "Attach Label" ), ks->map(), SLOT( slotAddObjectLabel() ) );
}
示例7: initPopupMenu
void KSPopupMenu::initPopupMenu( SkyObject *obj, QString name, QString type, QString info,
bool showDetails, bool showObsList, bool showFlags )
{
KStars* ks = KStars::Instance();
clear();
bool showLabel = name != i18n("star") && !name.isEmpty();
if( name.isEmpty() )
name = i18n( "Empty sky" );
addFancyLabel( name );
addFancyLabel( type );
addFancyLabel( info );
addFancyLabel( KStarsData::Instance()->skyComposite()->getConstellationBoundary()->constellationName( obj ) );
//Insert Rise/Set/Transit labels
SkyObject* o = obj->clone();
addSeparator();
addFancyLabel( riseSetTimeLabel(o, true), -2 );
addFancyLabel( riseSetTimeLabel(o, false), -2 );
addFancyLabel( transitTimeLabel(o), -2 );
addSeparator();
delete o;
// Show 'Select this object' item when in object pointing mode and when obj is not empty sky
if(KStars::Instance()->map()->isInObjectPointingMode() && obj->type() != 21) {
addAction( i18n( "Select this object"), KStars::Instance()->map(), SLOT(slotObjectSelected()));
}
//Insert item for centering on object
addAction( i18n( "Center && Track" ), ks->map(), SLOT( slotCenter() ) );
if ( showFlags ) {
//Insert actions for flag operations
initFlagActions( obj );
}
//Insert item for measuring distances
//FIXME: add key shortcut to menu items properly!
addAction( i18n( "Angular Distance To... [" ), ks->map(),
SLOT(slotBeginAngularDistance()) );
addAction( i18n( "Starhop from here to... " ), ks->map(),
SLOT(slotBeginStarHop()) );
//Insert item for Showing details dialog
if ( showDetails )
addAction( i18nc( "Show Detailed Information Dialog", "Details" ), ks->map(), SLOT( slotDetail() ) );
//Insert "Add/Remove Label" item
if ( showLabel ) {
if ( ks->map()->isObjectLabeled( obj ) ) {
addAction( i18n( "Remove Label" ), ks->map(), SLOT( slotRemoveObjectLabel() ) );
} else {
addAction( i18n( "Attach Label" ), ks->map(), SLOT( slotAddObjectLabel() ) );
}
}
// Should show observing list
if( showObsList ) {
if ( ks->observingList()->contains( obj ) )
addAction( i18n("Remove From Observing WishList"), ks->observingList(), SLOT( slotRemoveObject() ) );
else
addAction( i18n("Add to Observing WishList"), ks->observingList(), SLOT( slotAddObject() ) );
}
// Should we show trail actions
TrailObject* t = dynamic_cast<TrailObject*>( obj );
if( t ) {
if( t->hasTrail() )
addAction( i18n( "Remove Trail" ), ks->map(), SLOT( slotRemovePlanetTrail() ) );
else
addAction( i18n( "Add Trail" ), ks->map(), SLOT( slotAddPlanetTrail() ) );
}
addSeparator();
#ifdef HAVE_XPLANET
if ( obj->isSolarSystem() && obj->type() != SkyObject::COMET ) { // FIXME: We now have asteroids -- so should this not be isMajorPlanet() || Pluto?
QMenu *xplanetSubmenu = new QMenu();
xplanetSubmenu->setTitle( i18n( "Print Xplanet view" ) );
xplanetSubmenu->addAction( i18n( "To screen" ), ks->map(), SLOT( slotXplanetToScreen() ) );
xplanetSubmenu->addAction( i18n( "To file..." ), ks->map(), SLOT( slotXplanetToFile() ) );
addMenu( xplanetSubmenu );
}
#endif
addSeparator();
addINDI();
}