USGS

Isis 3.0 Object Programmers' Reference

Home

ImageTreeWidgetItem.h
1 #ifndef ImageTreeWidgetItem_H
2 #define ImageTreeWidgetItem_H
3 
4 #include <QObject>
5 #include <QTreeWidgetItem>
6 
7 
8 namespace Isis {
9  class Image;
10  class ImageList;
11 
20  class ImageTreeWidgetItem : public QObject, public QTreeWidgetItem {
21  Q_OBJECT
22  public:
23  ImageTreeWidgetItem(ImageList *imageList, Image *image,
24  QTreeWidget *parent = 0);
25  virtual ~ImageTreeWidgetItem();
26 
27  Image *image();
28  QString imageListName() const;
29 
30  void forgetImage();
31 
32  void update(bool save);
33 
34  // This is the column number for each column
35  enum TreeColumn {
36  NameColumn = 0,
37  FootprintColumn,
38  OutlineColumn,
39  ImageColumn,
40  LabelColumn,
41 
42  ResolutionColumn,
43  EmissionAngleColumn,
44  IncidenceAngleColumn,
45  PhaseAngleColumn,
46  AspectRatioColumn,
47  SampleResolutionColumn,
48  LineResolutionColumn,
49  NorthAzimuthColumn,
50 
51  BlankColumn
52  };
53 
54  static QString treeColumnToString(TreeColumn);
55 
56  using QTreeWidgetItem::parent;
57 
58  public slots:
59  void onDisplayPropertiesChanged();
60 
61  private:
62  void setColumnValue(TreeColumn column, double value);
63  bool operator<(const QTreeWidgetItem &other) const;
64 
65  Image *m_image;
66  ImageList *m_imageList;
67 
68  Qt::CheckState toCheck(QVariant);
69  };
70 }
71 
72 #endif
73