[Kstars-devel] KDE/kdeedu/kstars/kstars

Alexey Khudyakov alexey.skladnoy at gmail.com
Mon Nov 9 16:48:39 CET 2009


SVN commit 1046742 by khudyakov:

Apply patch from Lukas Middendorf

Make details dialog and calculator windows non-modal for improved usability
Fixes bug 210886

BUG: 210886
CCMAIL: kstars-devel at kde.org

 M  +1 -1      kstars.cpp  
 M  +2 -0      kstars.h  
 M  +3 -3      kstarsactions.cpp  
 M  +3 -3      skymap.cpp  


--- trunk/KDE/kdeedu/kstars/kstars/kstars.cpp #1046741:1046742
@@ -57,7 +57,7 @@
         AAVSODialog(0), findDialog(0), obsList(0),
         execute(0),
         avt(0), wut(0), skycal(0),
-        sb(0), pv(0), jmt(0), fm(0), indimenu(0), indidriver(0), indiseq(0),
+        sb(0), pv(0), jmt(0), fm(0), astrocalc(0), indimenu(0), indidriver(0), indiseq(0),
         DialogIsObsolete(false), StartClockRunning( clockrun ),
         StartDateString( startdate )
 {
--- trunk/KDE/kdeedu/kstars/kstars/kstars.h #1046741:1046742
@@ -43,6 +43,7 @@
 class AltVsTime;
 class LCGenerator;
 class WUTDialog;
+class AstroCalc;
 class SkyCalendar;
 class ScriptBuilder;
 class PlanetViewer;
@@ -669,6 +670,7 @@
     PlanetViewer *pv;
     JMoonTool *jmt;
     FlagManager *fm;
+    AstroCalc *astrocalc;
 
     INDIMenu *indimenu;
     INDIDriver *indidriver;
--- trunk/KDE/kdeedu/kstars/kstars/kstarsactions.cpp #1046741:1046742
@@ -177,9 +177,9 @@
 /** Major Dialog Window Actions **/
 
 void KStars::slotCalculator() {
-    QPointer<AstroCalc> astrocalc = new AstroCalc (this);
-    astrocalc->exec();
-    delete astrocalc;
+    if( ! astrocalc )
+        astrocalc = new AstroCalc (this);
+    astrocalc->show();
 }
 
 void KStars::slotWizard() {
--- trunk/KDE/kdeedu/kstars/kstars/skymap.cpp #1046741:1046742
@@ -646,9 +646,9 @@
         KMessageBox::sorry( this, i18n("No object selected."), i18n("Object Details") );
         return;
     }
-    QPointer<DetailDialog> detail = new DetailDialog( clickedObject(), data->ut(), data->geo(), KStars::Instance() );
-    detail->exec();
-    delete detail;
+    DetailDialog* detail = new DetailDialog( clickedObject(), data->ut(), data->geo(), KStars::Instance() );
+    detail->setAttribute(Qt::WA_DeleteOnClose);
+    detail->show();
 }
 
 void SkyMap::slotClockSlewing() {


More information about the Kstars-devel mailing list