Commit d8758fba authored by Makayla Shepherd's avatar Makayla Shepherd
Browse files

Redesign of qnet's SetApriori/Sigmas tool. Fixes #2325, #2383

git-svn-id: http://subversion.wr.usgs.gov/repos/prog/isis3/trunk@6975 41f8697f-d340-4b68-9986-7bafba869bb8
parent 475fdaaa
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -945,7 +945,7 @@ namespace Isis {
   *  
   * @internal 
   * @todo  This method should be temporary until the control point editor 
   *           comes online.  If this stick around, needs to be re-disigned-
   *           comes online.  If this stick around, needs to be re-designed-
   *           put in a separate class??
   *  
   */ 
@@ -964,8 +964,7 @@ namespace Isis {
      connect(m_aprioriDialog, SIGNAL(netChanged()),
              this, SIGNAL(netChanged()));
    }
    m_aprioriDialog->show();
    m_aprioriDialog->activateWindow();
    m_aprioriDialog->setVisiblity();
  }


+810 −138

File changed.

Preview size limit exceeded, changes collapsed.

+92 −10
Original line number Diff line number Diff line
@@ -3,7 +3,21 @@

#include <QDialog>

#include "ui_QnetSetAprioriDialog.h"

//forward declarations
class QDialog;
class QGridLayout;
class QGroupBox;
class QLabel;
class QLineEdit;
class QListWidget;
class QListWidgetItem;
class QPushButton;
class QStackedWidget;
class QString;
class QStringList;
class QVBoxLayout;


namespace Isis {
  class QnetTool;
@@ -13,29 +27,97 @@ namespace Isis {
   *
   * @internal
   */
  class QnetSetAprioriDialog : public QDialog, public Ui::QnetSetAprioriDialog {
  class QnetSetAprioriDialog : public QDialog {
      Q_OBJECT

    public:
      QnetSetAprioriDialog(QnetTool *qnetTool, QWidget *parent = 0);
      void setPoints(QList<QListWidgetItem *> selectedPoints);
    
    public slots:
      void setVisiblity();
      
    signals:
     // void aprioriDialogClosed();
      void pointChanged(QString pointId);
      void netChanged();

    private slots:
      void unlockPoint(QListWidgetItem *ptId);
      void fillCurrentAprioriLineEdits();
      void fillReferenceAprioriLineEdits();
      void fillAverageAprioriLineEdits();
//      void fillGroundSourceAprioriLineEdits();
      void fillSigmaLineEdits();
      void clearLineEdits();
      void resetInfoLabels();
      void setApriori();
      
    private:
      void clearLineEdits();
      void fillLineEdits();
      
      void createSetAprioriDialog(QWidget *parent);
      void setInfoStack(QList<QListWidgetItem *> selectedPoints);
      void checkPointInfoDisable(QList<QListWidgetItem *> selectedPoints);
      
      QDialog *m_aprioriDialog;
      QGridLayout *m_aprioriGridLayout;
      QPushButton *m_okButton;
      QPushButton *m_cancelButton;
      QPushButton *m_applyButton;
      QStackedWidget *m_pointInfoStack;
      
      QGroupBox *m_singlePointInfoGroup;
      QLabel *m_pointIDLabel;
      QLabel *m_pointTypeLabel;
      QLabel *m_pointMeasureNumber;
      QLabel *m_editLockedBoolLabel;
      QLabel *m_ignoredBoolLabel;
      
      QGroupBox *m_multiplePointsInfoGroup;
      QLabel *m_pointsCount;
      QLabel *m_pointsMeasuresCount;
      QLabel *m_constrainedPointsCount;
      QLabel *m_fixedPointsCount;
      QLabel *m_freePointsCount;
      QLabel *m_pointsEditLockedCount;
      QLabel *m_pointsIgnoredCount;
      
      QGroupBox *m_pointGroup;
      QLabel *m_aprioriLatLabel;
      QLabel *m_aprioriLonLabel;
      QLabel *m_aprioriRadiusLabel;
      QLineEdit *m_latLineEdit;
      QLineEdit *m_lonLineEdit;
      QLineEdit *m_radiusLineEdit;
      QPushButton *m_currentAprioriButton;
      QPushButton *m_referenceAprioriButton;
      QPushButton *m_averageAprioriButton;
      
      QGroupBox *m_sigmaGroup;
      QLabel *m_sigmaWarningLabel;
      QPushButton *m_currentSigmaButton;
      QLabel *m_latSigmaLabel;
      QLabel *m_lonSigmaLabel;
      QLabel *m_radiusSigmaLabel;
      QLineEdit *m_latSigmaLineEdit;
      QLineEdit *m_lonSigmaLineEdit;
      QLineEdit *m_radiusSigmaLineEdit;
      
      QList<QListWidgetItem *> m_points;
      QnetTool *m_qnetTool;
      
      enum Source {
        USER,
        AVERAGE,
        REFERENCE,
      };
      
      Source m_aprioriSource;
      
      int m_multiPointsMeasureCount;
      int m_multiPointsConstraintedCount;
      int m_multiPointsFixedCount;
      int m_multiPointsFreeCount;
      int m_multiPointsEditLockedCount;
      int m_multiPointsIgnoredCount;
  };
}