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

List:       kde-commits
Subject:    [kstars/filtermanager] kstars/oal: Update equipment writer to manage changes in filters
From:       Jasem Mutlaq <null () kde ! org>
Date:       2017-09-30 19:55:50
Message-ID: E1dyNra-0002Vj-PV () code ! kde ! org
[Download RAW message or body]

Git commit f3c4a4798be1122ce4cb695821bcfc3d833fee72 by Jasem Mutlaq.
Committed on 30/09/2017 at 17:32.
Pushed by mutlaqja into branch 'filtermanager'.

Update equipment writer to manage changes in filters

M  +14   -14   kstars/oal/equipmentwriter.cpp
M  +68   -46   kstars/oal/equipmentwriter.ui
M  +2    -1    kstars/oal/filter.cpp
M  +10   -7    kstars/oal/filter.h
M  +22   -3    kstars/oal/log.cpp

https://commits.kde.org/kstars/f3c4a4798be1122ce4cb695821bcfc3d833fee72

diff --git a/kstars/oal/equipmentwriter.cpp b/kstars/oal/equipmentwriter.cpp
index 83ff26c8b..d96038a33 100644
--- a/kstars/oal/equipmentwriter.cpp
+++ b/kstars/oal/equipmentwriter.cpp
@@ -256,16 +256,16 @@ void EquipmentWriter::slotNewLens()
 void EquipmentWriter::slotAddFilter()
 {
     KStarsData::Instance()->userdb()->AddFilter(ui.f_Vendor->text(), \
                ui.f_Model->text(), ui.f_Type->text(),
-                                                ui.f_Offset->text(), \
                ui.f_Color->text(), ui.f_Exposure->text(),
-                                                ui.f_LockedFilter->text(), \
ui.f_UseAutoFocus->isChecked()); +                                                \
ui.f_Color->text(), ui.f_Offset->value(), ui.f_Exposure->value(), +                   \
ui.f_UseAutoFocus->isChecked(), ui.f_LockedFilter->text());  loadEquipment();
     ui.f_Id->clear();
     ui.f_Model->clear();
     ui.f_Vendor->clear();
     ui.f_Type->clear();
-    ui.f_Offset->clear();
+    ui.f_Offset->setValue(0);
     ui.f_Color->clear();
-    ui.f_Exposure->clear();
+    ui.f_Exposure->setValue(1);
     ui.f_LockedFilter->clear();
     ui.f_UseAutoFocus->setChecked(false);
 }
@@ -278,9 +278,9 @@ void EquipmentWriter::slotRemoveFilter()
     ui.f_Model->clear();
     ui.f_Vendor->clear();
     ui.f_Type->clear();
-    ui.f_Offset->clear();
+    ui.f_Offset->setValue(0);
     ui.f_Color->clear();
-    ui.f_Exposure->clear();
+    ui.f_Exposure->setValue(0);
     ui.f_LockedFilter->clear();
     ui.f_UseAutoFocus->setChecked(false);
     ui.FilterList->clear();
@@ -293,13 +293,13 @@ void EquipmentWriter::slotSaveFilter()
     // Add
     if (ui.f_Id->text().isEmpty())
         KStarsData::Instance()->userdb()->AddFilter(ui.f_Vendor->text(), \
                ui.f_Model->text(), ui.f_Type->text(),
-                                                    ui.f_Offset->text(), \
                ui.f_Color->text(), ui.f_Exposure->text(),
-                                                    ui.f_LockedFilter->text(), \
ui.f_UseAutoFocus->isChecked()); +                                                    \
ui.f_Color->text(), ui.f_Offset->value(), ui.f_Exposure->value(), +                   \
ui.f_UseAutoFocus->isChecked(), ui.f_LockedFilter->text());  // Update Existing
     else
         KStarsData::Instance()->userdb()->AddFilter(ui.f_Vendor->text(), \
                ui.f_Model->text(), ui.f_Type->text(),
-                                                    ui.f_Offset->text(), \
                ui.f_Color->text(), ui.f_Exposure->text(),
-                                                    ui.f_LockedFilter->text(), \
ui.f_UseAutoFocus->isChecked(), ui.f_Id->text()); +                                   \
ui.f_Color->text(), ui.f_Offset->value(), ui.f_Exposure->value(), +                   \
ui.f_UseAutoFocus->isChecked(), ui.f_LockedFilter->text(), ui.f_Id->text());  
     loadEquipment();
 }
@@ -314,9 +314,9 @@ void EquipmentWriter::slotSetFilter(QString name)
         ui.f_Model->setText(f->model());
         ui.f_Vendor->setText(f->vendor());
         ui.f_Type->setText(f->type());
-        ui.f_Offset->setText(f->offset());
         ui.f_Color->setText(f->color());
-        ui.f_Exposure->setText(f->exposure());
+        ui.f_Offset->setValue(f->offset());
+        ui.f_Exposure->setValue(f->exposure());
         ui.f_LockedFilter->setText(f->lockedFilter());
         ui.f_UseAutoFocus->setChecked(f->useAutoFocus());
         newFilter = false;
@@ -331,8 +331,8 @@ void EquipmentWriter::slotNewFilter()
     ui.f_Type->clear();
     ui.f_Model->clear();
     ui.f_Color->clear();
-    ui.f_Offset->clear();
-    ui.f_Exposure->clear();
+    ui.f_Offset->setValue(0);
+    ui.f_Exposure->setValue(1);
     ui.f_LockedFilter->clear();
     ui.f_UseAutoFocus->setChecked(false);
     ui.FilterList->selectionModel()->clear();
diff --git a/kstars/oal/equipmentwriter.ui b/kstars/oal/equipmentwriter.ui
index 3816d352a..bb2c20f84 100644
--- a/kstars/oal/equipmentwriter.ui
+++ b/kstars/oal/equipmentwriter.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>411</width>
-    <height>344</height>
+    <width>398</width>
+    <height>333</height>
    </rect>
   </property>
   <layout class="QVBoxLayout" name="_2">
@@ -20,7 +20,7 @@
       </size>
      </property>
      <property name="currentIndex">
-      <number>3</number>
+      <number>0</number>
      </property>
      <property name="documentMode">
       <bool>false</bool>
@@ -555,17 +555,14 @@
       <attribute name="title">
        <string>Filter</string>
       </attribute>
-      <layout class="QHBoxLayout" name="_5">
+      <layout class="QHBoxLayout" name="horizontalLayout_7">
        <item>
         <widget class="QListWidget" name="FilterList"/>
        </item>
        <item>
-        <layout class="QVBoxLayout" name="verticalLayout4">
+        <layout class="QVBoxLayout" name="verticalLayout_3">
          <item>
-          <layout class="QFormLayout" name="formLayout4">
-           <property name="fieldGrowthPolicy">
-            <enum>QFormLayout::ExpandingFieldsGrow</enum>
-           </property>
+          <layout class="QFormLayout" name="formLayout_3">
            <item row="0" column="0">
             <widget class="QLabel" name="label4">
              <property name="text">
@@ -583,47 +580,73 @@
              </property>
             </widget>
            </item>
-           <item row="2" column="0">
+           <item row="1" column="0">
             <widget class="QLabel" name="label5">
              <property name="text">
               <string>Vendor:</string>
              </property>
             </widget>
            </item>
-           <item row="2" column="1">
+           <item row="1" column="1">
             <widget class="QLineEdit" name="f_Vendor"/>
            </item>
-           <item row="4" column="0">
+           <item row="2" column="0">
+            <widget class="QLabel" name="label3">
+             <property name="text">
+              <string>Model:</string>
+             </property>
+            </widget>
+           </item>
+           <item row="2" column="1">
+            <widget class="QLineEdit" name="f_Model"/>
+           </item>
+           <item row="3" column="0">
             <widget class="QLabel" name="label6">
              <property name="text">
               <string>Type:</string>
              </property>
             </widget>
            </item>
-           <item row="4" column="1">
+           <item row="3" column="1">
             <widget class="QLineEdit" name="f_Type"/>
            </item>
-           <item row="6" column="0">
+           <item row="4" column="0">
             <widget class="QLabel" name="label_12">
              <property name="text">
               <string>Color:</string>
              </property>
             </widget>
            </item>
-           <item row="6" column="1">
+           <item row="4" column="1">
             <widget class="QLineEdit" name="f_Color"/>
            </item>
-           <item row="3" column="1">
-            <widget class="QLineEdit" name="f_Model"/>
-           </item>
-           <item row="3" column="0">
-            <widget class="QLabel" name="label3">
+           <item row="5" column="0">
+            <widget class="QLabel" name="label_19">
              <property name="text">
-              <string>Model:</string>
+              <string>Exposure:</string>
              </property>
             </widget>
            </item>
-           <item row="5" column="0">
+           <item row="5" column="1">
+            <widget class="QDoubleSpinBox" name="f_Exposure">
+             <property name="sizePolicy">
+              <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
+               <horstretch>0</horstretch>
+               <verstretch>0</verstretch>
+              </sizepolicy>
+             </property>
+             <property name="minimum">
+              <double>0.010000000000000</double>
+             </property>
+             <property name="maximum">
+              <double>120.000000000000000</double>
+             </property>
+             <property name="value">
+              <double>1.000000000000000</double>
+             </property>
+            </widget>
+           </item>
+           <item row="6" column="0">
             <widget class="QLabel" name="label_18">
              <property name="toolTip">
               <string>Filter focus offset</string>
@@ -633,20 +656,36 @@
              </property>
             </widget>
            </item>
-           <item row="5" column="1">
-            <widget class="QLineEdit" name="f_Offset"/>
+           <item row="6" column="1">
+            <widget class="QSpinBox" name="f_Offset">
+             <property name="sizePolicy">
+              <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
+               <horstretch>0</horstretch>
+               <verstretch>0</verstretch>
+              </sizepolicy>
+             </property>
+             <property name="minimum">
+              <number>-10000</number>
+             </property>
+             <property name="maximum">
+              <number>10000</number>
+             </property>
+             <property name="singleStep">
+              <number>100</number>
+             </property>
+            </widget>
            </item>
            <item row="7" column="0">
-            <widget class="QLabel" name="label_19">
+            <widget class="QLabel" name="label_21">
              <property name="text">
-              <string>Exposure:</string>
+              <string>Auto Focus:</string>
              </property>
             </widget>
            </item>
            <item row="7" column="1">
-            <widget class="QLineEdit" name="f_Exposure">
-             <property name="toolTip">
-              <string>Filter default exposure time in Ekos Focus Module</string>
+            <widget class="QCheckBox" name="f_UseAutoFocus">
+             <property name="text">
+              <string>Enable</string>
              </property>
             </widget>
            </item>
@@ -657,23 +696,9 @@
              </property>
             </widget>
            </item>
-           <item row="9" column="0">
-            <widget class="QLabel" name="label_21">
-             <property name="text">
-              <string>Auto Focus:</string>
-             </property>
-            </widget>
-           </item>
            <item row="8" column="1">
             <widget class="QLineEdit" name="f_LockedFilter"/>
            </item>
-           <item row="9" column="1">
-            <widget class="QCheckBox" name="f_UseAutoFocus">
-             <property name="text">
-              <string>Enable</string>
-             </property>
-            </widget>
-           </item>
           </layout>
          </item>
          <item>
@@ -753,9 +778,6 @@
   <tabstop>f_Vendor</tabstop>
   <tabstop>f_Model</tabstop>
   <tabstop>f_Type</tabstop>
-  <tabstop>f_Offset</tabstop>
-  <tabstop>f_Color</tabstop>
-  <tabstop>f_Exposure</tabstop>
   <tabstop>NewFilter</tabstop>
   <tabstop>AddFilter</tabstop>
   <tabstop>ScopeList</tabstop>
diff --git a/kstars/oal/filter.cpp b/kstars/oal/filter.cpp
index 4afaad057..7db5e86cb 100644
--- a/kstars/oal/filter.cpp
+++ b/kstars/oal/filter.cpp
@@ -18,7 +18,8 @@
 
 #include "oal/filter.h"
 
-OAL::Filter::Filter(const QString &id, const QString &model, const QString &vendor, \
const QString &type, const QString &offset, const QString &color, const QString \
&exposure, const QString &lockedFilter, bool useAutoFocus) +OAL::Filter::Filter(const \
QString &id, const QString &model, const QString &vendor, const QString &type, const \
QString &color, +                          double exposure, int offset, bool \
useAutoFocus, const QString &lockedFilter)  {
     m_Id       = id;
     m_Model    = model;
diff --git a/kstars/oal/filter.h b/kstars/oal/filter.h
index d72bd94b2..f00c1b652 100644
--- a/kstars/oal/filter.h
+++ b/kstars/oal/filter.h
@@ -30,8 +30,9 @@
 class OAL::Filter
 {
   public:
-    Filter(const QString &id, const QString &model, const QString &vendor, const \
                QString &type, const QString &offset,
-           const QString &color, const QString &exposure, const QString \
&lockedFilter, bool useAutoFocus); +    Filter(const QString &id, const QString \
&model, const QString &vendor, const QString &type, const QString &color, +           \
double exposure, int offset, bool useAutoFocus, const QString &lockedFilter); +
     QString id() const { return m_Id; }
     QString name() const { return m_Name; }
     QString model() const { return m_Model; }
@@ -40,11 +41,11 @@ class OAL::Filter
     QString color() const { return m_Color; }
 
     // Additional fields used by Ekos
-    QString offset() const { return m_Offset; }
-    void setOffset(const QString &_offset) { m_Offset = _offset; }
+    int offset() const { return m_Offset; }
+    void setOffset(int _offset) { m_Offset = _offset; }
 
-    QString exposure() const { return m_Exposure; }
-    void setExposure(const QString &_exposure) { m_Exposure = _exposure; }
+    double exposure() const { return m_Exposure; }
+    void setExposure(double _exposure) { m_Exposure = _exposure; }
 
     QString lockedFilter() const { return m_LockedFilter; }
     void setLockedFilter(const QString &_filter) { m_LockedFilter = _filter; }
@@ -53,7 +54,9 @@ class OAL::Filter
     void setUseAutoFocus(bool enabled) { m_UseAutoFocus = enabled; }
 
   private:
-    QString m_Id, m_Model, m_Vendor, m_Type, m_Color, m_Name, m_Offset, m_Exposure, \
m_LockedFilter; +    QString m_Id, m_Model, m_Vendor, m_Type, m_Color, m_Name, \
m_LockedFilter; +    int m_Offset = { 0 };
+    double m_Exposure = { 1.0 };
     bool m_UseAutoFocus;
 };
 #endif
diff --git a/kstars/oal/log.cpp b/kstars/oal/log.cpp
index d0d704087..4f7691063 100644
--- a/kstars/oal/log.cpp
+++ b/kstars/oal/log.cpp
@@ -389,21 +389,40 @@ void OAL::Log::writeFilter(OAL::Filter *f)
 {
     writer->writeStartElement("filter");
     writer->writeAttribute("id", f->id());
+
+    // Model
     writer->writeStartElement("model");
     writer->writeCDATA(f->model());
     writer->writeEndElement();
+    // Vendor
     writer->writeStartElement("vendor");
     writer->writeCDATA(f->vendor());
     writer->writeEndElement();
+    // Type
     writer->writeStartElement("type");
     writer->writeCDATA(f->type());
+    writer->writeEndElement();    
+    // Color
+    writer->writeStartElement("color");
+    writer->writeCDATA(f->color());
     writer->writeEndElement();
+    // Offset
     writer->writeStartElement("offset");
-    writer->writeCDATA(f->offset());
+    writer->writeCDATA(QString::number(f->offset()));
     writer->writeEndElement();
-    writer->writeStartElement("color");
-    writer->writeCDATA(f->color());
+    // Exposure
+    writer->writeStartElement("exposure");
+    writer->writeCDATA(QString::number(f->exposure()));
+    writer->writeEndElement();
+    // AutoFocus
+    writer->writeStartElement("autofocus");
+    writer->writeCDATA(QString::number(f->useAutoFocus() ? 1 : 0));
     writer->writeEndElement();
+    // Locked Filter
+    writer->writeStartElement("lockedfilter");
+    writer->writeCDATA(f->lockedFilter());
+    writer->writeEndElement();
+
     writer->writeEndElement();
 }
 


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

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