[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kstars] kstars: always load primary CCD first in Align, Focus, and Capture modules. Increasing turn
From:       Jasem Mutlaq <mutlaqja () ikarustech ! com>
Date:       2014-01-01 7:36:59
Message-ID: E1VyGMN-0008Iq-HI () scm ! kde ! org
[Download RAW message or body]

Git commit bbc2cf62a02c17911d7184d9e968237f1086d962 by Jasem Mutlaq.
Committed on 01/01/2014 at 07:36.
Pushed by mutlaqja into branch 'master'.

always load primary CCD first in Align, Focus, and Capture modules. Increasing turn \
back time in guide module calibration step, and making Ekos a top level window

M  +8    -4    kstars/ekos/align.cpp
M  +1    -1    kstars/ekos/align.h
M  +8    -2    kstars/ekos/capture.cpp
M  +1    -1    kstars/ekos/capture.h
M  +10   -5    kstars/ekos/ekosmanager.cpp
M  +9    -4    kstars/ekos/focus.cpp
M  +1    -1    kstars/ekos/focus.h
M  +3    -3    kstars/ekos/guide/rcalibration.cpp
M  +2    -0    kstars/kstarsactions.cpp

http://commits.kde.org/kstars/bbc2cf62a02c17911d7184d9e968237f1086d962

diff --git a/kstars/ekos/align.cpp b/kstars/ekos/align.cpp
index b70bce8..1f47f4c 100644
--- a/kstars/ekos/align.cpp
+++ b/kstars/ekos/align.cpp
@@ -196,15 +196,19 @@ void Align::checkCCD(int ccdNum)
 
 }
 
-void Align::addCCD(ISD::GDInterface *newCCD)
+void Align::addCCD(ISD::GDInterface *newCCD, bool isPrimaryCCD)
 {
     CCDCaptureCombo->addItem(newCCD->getDeviceName());
 
     CCDs.append(static_cast<ISD::CCD *>(newCCD));
 
-    checkCCD(0);
-
-    CCDCaptureCombo->setCurrentIndex(0);
+    if (isPrimaryCCD)
+    {
+        checkCCD(CCDs.count()-1);
+        CCDCaptureCombo->setCurrentIndex(CCDs.count()-1);
+    }
+    else
+        CCDCaptureCombo->setCurrentIndex(0);
 }
 
 void Align::setTelescope(ISD::GDInterface *newTelescope)
diff --git a/kstars/ekos/align.h b/kstars/ekos/align.h
index a9b8094..1c89390 100644
--- a/kstars/ekos/align.h
+++ b/kstars/ekos/align.h
@@ -39,7 +39,7 @@ public:
     typedef enum { AZ_INIT, AZ_FIRST_TARGET, AZ_SYNCING, AZ_SLEWING, \
                AZ_SECOND_TARGET, AZ_CORRECTING, AZ_FINISHED } AZStage;
     typedef enum { ALT_INIT, ALT_FIRST_TARGET, ALT_SYNCING, ALT_SLEWING, \
ALT_SECOND_TARGET, ALT_CORRECTING, ALT_FINISHED } ALTStage;  
-    void addCCD(ISD::GDInterface *newCCD);
+    void addCCD(ISD::GDInterface *newCCD, bool isPrimaryCCD);
     void setTelescope(ISD::GDInterface *newTelescope);
     void addGuideHead();
     void syncTelescopeInfo();
diff --git a/kstars/ekos/capture.cpp b/kstars/ekos/capture.cpp
index 6a02c68..92523aa 100644
--- a/kstars/ekos/capture.cpp
+++ b/kstars/ekos/capture.cpp
@@ -218,7 +218,7 @@ Capture::~Capture()
     qDeleteAll(jobs);
 }
 
-void Capture::addCCD(ISD::GDInterface *newCCD)
+void Capture::addCCD(ISD::GDInterface *newCCD, bool isPrimaryCCD)
 {
     ISD::CCD *ccd = static_cast<ISD::CCD *> (newCCD);
 
@@ -226,7 +226,13 @@ void Capture::addCCD(ISD::GDInterface *newCCD)
 
     CCDs.append(ccd);
 
-    checkCCD(0);
+    if (isPrimaryCCD)
+    {
+        checkCCD(CCDs.count()-1);
+        CCDCaptureCombo->setCurrentIndex(CCDs.count()-1);
+    }
+    else
+        CCDCaptureCombo->setCurrentIndex(0);
 }
 
 void Capture::addGuideHead(ISD::GDInterface *newCCD)
diff --git a/kstars/ekos/capture.h b/kstars/ekos/capture.h
index df2e3a5..094d6e2 100644
--- a/kstars/ekos/capture.h
+++ b/kstars/ekos/capture.h
@@ -123,7 +123,7 @@ public:
 
     Capture();
     ~Capture();
-    void addCCD(ISD::GDInterface *newCCD);
+    void addCCD(ISD::GDInterface *newCCD, bool isPrimaryCCD);
     void addFilter(ISD::GDInterface *newFilter);
     void addGuideHead(ISD::GDInterface *newCCD);
 
diff --git a/kstars/ekos/ekosmanager.cpp b/kstars/ekos/ekosmanager.cpp
index 7b7bb12..ab4d929 100644
--- a/kstars/ekos/ekosmanager.cpp
+++ b/kstars/ekos/ekosmanager.cpp
@@ -30,7 +30,7 @@
 #define MAX_REMOTE_INDI_TIMEOUT 15000
 
 EkosManager::EkosManager()
-        : QDialog(KStars::Instance())
+        : QDialog()
 {
     setupUi(this);
 
@@ -877,13 +877,18 @@ void EkosManager::setTelescope(ISD::GDInterface *scopeDevice)
 
 void EkosManager::setCCD(ISD::GDInterface *ccdDevice)
 {
+    bool isPrimaryCCD = false;
+
+    if (ccd_di == ccdDevice->getDriverInfo())
+        isPrimaryCCD = true;
+
     initCapture();
 
-    captureProcess->addCCD(ccdDevice);
+    captureProcess->addCCD(ccdDevice, isPrimaryCCD);
 
     initFocus();
 
-    focusProcess->addCCD(ccdDevice);
+    focusProcess->addCCD(ccdDevice, isPrimaryCCD);
 
     // If we have a guider and it's the same as the CCD driver, then let's establish \
                it separately.
     //if (useGuiderFromCCD == false && guider_di && \
(!strcmp(guider_di->getBaseDevice()->getDeviceName(), ccdDevice->getDeviceName()))) \
@@ -896,7 +901,7 @@ void EkosManager::setCCD(ISD::GDInterface *ccdDevice)  \
guideProcess->setCCD(guider);  
         initAlign();
-        alignProcess->addCCD(guider);
+        alignProcess->addCCD(guider, false);
 
         if (scope && scope->isConnected())
             guideProcess->setTelescope(scope);
@@ -911,7 +916,7 @@ void EkosManager::setCCD(ISD::GDInterface *ccdDevice)
         ccdStarted = true;
 
         initAlign();
-        alignProcess->addCCD(ccd);
+        alignProcess->addCCD(ccd, isPrimaryCCD);
         if (scope && scope->isConnected())
             alignProcess->setTelescope(scope);
 
diff --git a/kstars/ekos/focus.cpp b/kstars/ekos/focus.cpp
index 7cc4269..f2824e8 100644
--- a/kstars/ekos/focus.cpp
+++ b/kstars/ekos/focus.cpp
@@ -139,15 +139,20 @@ void Focus::setFocuser(ISD::GDInterface *newFocuser)
     resetButtons();
 }
 
-void Focus::addCCD(ISD::GDInterface *newCCD)
+void Focus::addCCD(ISD::GDInterface *newCCD, bool isPrimaryCCD)
 {
     CCDCaptureCombo->addItem(newCCD->getDeviceName());
 
-    CCDs.append(static_cast<ISD::CCD *>(newCCD));
+    CCDs.append(static_cast<ISD::CCD *>(newCCD));   
 
-    checkCCD(0);
+    if (isPrimaryCCD)
+    {
+        checkCCD(CCDs.count()-1);
+        CCDCaptureCombo->setCurrentIndex(CCDs.count()-1);
+    }
+    else
+        CCDCaptureCombo->setCurrentIndex(0);
 
-    CCDCaptureCombo->setCurrentIndex(0);
 }
 
 void Focus::getAbsFocusPosition()
diff --git a/kstars/ekos/focus.h b/kstars/ekos/focus.h
index 3c340a8..0474ebb 100644
--- a/kstars/ekos/focus.h
+++ b/kstars/ekos/focus.h
@@ -40,7 +40,7 @@ public:
     ~Focus();
 
     void setFocuser(ISD::GDInterface *newFocuser);
-    void addCCD(ISD::GDInterface *newCCD);
+    void addCCD(ISD::GDInterface *newCCD, bool isPrimaryCCD);
     void focuserDisconnected();
 
     typedef enum { FOCUS_NONE, FOCUS_IN, FOCUS_OUT } FocusDirection;
diff --git a/kstars/ekos/guide/rcalibration.cpp b/kstars/ekos/guide/rcalibration.cpp
index 7310240..24d4fc9 100644
--- a/kstars/ekos/guide/rcalibration.cpp
+++ b/kstars/ekos/guide/rcalibration.cpp
@@ -436,7 +436,7 @@ void rcalibration::calibrate_reticle_by_ra_dec( bool ra_only )
             if (ra_only)
                 turn_back_time = auto_drift_time*2 + auto_drift_time/2;
             else
-                turn_back_time = auto_drift_time*5;
+                turn_back_time = auto_drift_time*6;
             iterations = 0;
 
             ui.progressBar->setMaximum( turn_back_time );
@@ -557,7 +557,7 @@ void rcalibration::calibrate_reticle_by_ra_dec( bool ra_only )
         }
         else
         {
-            QMessageBox::warning( this, i18n("Error"), i18n("Calibration rejected. \
Start drift is too short."), QMessageBox::Ok ); +            QMessageBox::warning( \
this, i18n("Error"), i18n("Calibration rejected. Star drift is too short."), \
QMessageBox::Ok );  ui.startCalibrationLED->setColor(alertColor);
             calibrationStage = CAL_ERROR;
         }
@@ -648,7 +648,7 @@ void rcalibration::calibrate_reticle_by_ra_dec( bool ra_only )
     }
     else
     {
-        QMessageBox::warning( this, i18n("Error"), i18n("Calibration rejected. Start \
drift is too short."), QMessageBox::Ok ); +        QMessageBox::warning( this, \
i18n("Error"), i18n("Calibration rejected. Star drift is too short."), \
QMessageBox::Ok );  ui.startCalibrationLED->setColor(alertColor);
         calibrationStage = CAL_ERROR;
     }
diff --git a/kstars/kstarsactions.cpp b/kstars/kstarsactions.cpp
index 18a55ae..16aeb59 100644
--- a/kstars/kstarsactions.cpp
+++ b/kstars/kstarsactions.cpp
@@ -454,6 +454,8 @@ void KStars::slotEkos()
         ekosmenu = new EkosManager();
 
     ekosmenu->show();
+    ekosmenu->raise();
+    ekosmenu->activateWindow();
 #endif
 #endif
 }


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic