void SkyMap::mouseReleaseEvent( QMouseEvent * ) { if ( ZoomRect.isValid() ) { stopTracking(); SkyPoint newcenter = projector()->fromScreen( ZoomRect.center(), data->lst(), data->geo()->lat() ); setFocus( &newcenter ); setDestination( newcenter ); //Zoom in on center of Zoom Circle, by a factor equal to the ratio //of the sky pixmap's width to the Zoom Circle's diameter float factor = float(width()) / float(ZoomRect.width()); setZoomFactor( Options::zoomFactor() * factor ); } setDefaultMouseCursor(); ZoomRect = QRect(); //invalidate ZoomRect if(m_previewLegend) { slotCancelLegendPreviewMode(); } //false if double-clicked, because it's unset there. if (mouseButtonDown) { mouseButtonDown = false; if ( slewing ) { slewing = false; if ( Options::useAltAz() ) setDestinationAltAz( focus()->alt(), focus()->az() ); else setDestination( *focus() ); } forceUpdate(); // is needed because after moving the sky not all stars are shown } // if middle button was pressed unset here midMouseButtonDown = false; }
//----------------------------------------------------------------------------- bool MyGUIManager::init() { if(!mGUIRender) { mGUIRender = &CEGUI::OgreRenderer::bootstrapSystem(); mGUISystem = CEGUI::System::getSingletonPtr(); //加载GUI主题, 设置默认参数 CEGUI::Imageset::setDefaultResourceGroup("Imagesets"); CEGUI::Font::setDefaultResourceGroup("Fonts"); CEGUI::Scheme::setDefaultResourceGroup("Schemes"); CEGUI::WidgetLookManager::setDefaultResourceGroup("LookNFeel"); CEGUI::WindowManager::setDefaultResourceGroup("Layouts"); CEGUI::SchemeManager::getSingleton().create("TaharezLook.scheme"); //CEGUI::FontManager::getSingleton().create("Batang-26.font"); //mGUISystem->setDefaultFont("Batang-26"); //设置默认鼠标样式 setDefaultMouseCursor("TaharezLook", "MouseArrow"); /*CEGUI::WindowManager &wmgr = CEGUI::WindowManager::getSingleton(); CEGUI::Window *sheet = wmgr.createWindow("DefaultWindow", "CEGUIDemo/Sheet");*/ /*CEGUI::Window *quit = wmgr.createWindow("TaharezLook/Button", "CEGUIDemo/QuitButton"); quit->setText("enter game"); quit->setSize(CEGUI::UVector2(CEGUI::UDim(0.15, 0), CEGUI::UDim(0.1, 0)));*/ /*sheet->addChildWindow(quit); mGUISystem->setGUISheet(sheet);*/ // quit->subscribeEvent(CEGUI::PushButton::EventClicked, // CEGUI::Event::Subscriber(&GameApp::getSingletonPtr->shutdown, this)); /* * 此处设置图片资源(Imageset) */ //设置GUI鼠标是否可见 showGUICursor(true); return true; } return false; }
/************************************************************************* Set the image to be used as the default mouse cursor. *************************************************************************/ void System::setDefaultMouseCursor(const String& imageset, const String& image_name) { setDefaultMouseCursor(&ImagesetManager::getSingleton().getImageset(imageset)->getImage(image_name)); }