Isis Developer Reference
ImageFileListWidget.h
Go to the documentation of this file.
1#ifndef ImageFileListWidget_H
2#define ImageFileListWidget_H
3
4#include <QWidget>
5
6#include <QPointer>
7#include <QScopedPointer>
8
9#include "ImageList.h"
10#include "ImageTreeWidget.h"
11#include "PvlObject.h"
12
13class QLabel;
14class QLineEdit;
15class QProgressBar;
16class QSettings;
17class QToolBar;
18class QTreeWidgetItem;
19
20namespace Isis {
21 class Directory;
22 class ImageTreeWidgetItem;
23 class ProgressBar;
24
65 Q_OBJECT
66 public:
67 ImageFileListWidget(Directory *directory = 0, QWidget *parent = 0);
68 virtual ~ImageFileListWidget();
69
71 void fromPvl(PvlObject &pvl);
72 PvlObject toPvl() const;
73 void load(XmlStackedHandlerReader *xmlReader);
74 void save(QXmlStreamWriter &stream, Project *project, FileName newProjectRoot) const;
75
76 QList<QAction *> actions();
77 QList<QAction *> getViewActions();
78 QList<QAction *> getExportActions();
79
80 static QWidget *getLongHelp(QWidget *fileListContainer = NULL);
81
82 public slots:
83 void addImages(ImageList *images);
84 void removeImages(ImageList *images);
85 void clear();
86 void filterFileList();
87
88 protected:
89 void contextMenuEvent(QContextMenuEvent *event);
90
91 private slots:
92 void saveList();
93
94 private:
95 void save(QXmlStreamWriter &stream, QTreeWidgetItem *itemToWrite) const;
96
97 ImageTreeWidget::ImagePosition find(const Image *image) const;
98 void restoreExpandedStates(QVariant expandedStates, QTreeWidgetItem *item);
99 QVariant saveExpandedStates(QTreeWidgetItem *item);
100
101 private:
107 class XmlHandler : public XmlStackedHandler {
108 public:
109 XmlHandler(ImageFileListWidget *fileList);
110 ~XmlHandler();
111
112 virtual bool startElement(const QString &namespaceURI, const QString &localName,
113 const QString &qName, const QXmlAttributes &atts);
114 virtual bool endElement(const QString &namespaceURI, const QString &localName,
115 const QString &qName);
116
117 private:
118 Q_DISABLE_COPY(XmlHandler);
119
120 ImageFileListWidget *m_fileList;
121 ImageList *m_currentImageList;
122 QTreeWidgetItem *m_currentImageListItem;
123 QTreeWidgetItem *m_currentGroup;
124 };
125
126 private:
127 QPointer<ProgressBar> m_progress;
129 QScopedPointer<PvlObject> m_serialized;
130
131 QToolBar *m_searchToolbar;
132 QLineEdit *m_searchLineEdit;
133 QLabel *m_fileCount;
134
135
136 ImageTreeWidget *m_tree;
137 Directory *m_directory;
138 };
139}
140
141#endif
Definition Directory.h:271
File name manipulation and expansion.
Definition FileName.h:100
A colored, grouped cube list.
Definition ImageFileListWidget.h:64
virtual ~ImageFileListWidget()
Destructor.
Definition ImageFileListWidget.cpp:98
void addImages(ImageList *images)
This method adds the new images to the tree.
Definition ImageFileListWidget.cpp:342
void clear()
Definition ImageFileListWidget.cpp:906
QList< QAction * > actions()
This method calls ImageTreeWidget::actions() which sets up a QAction that sets a default for the file...
Definition ImageFileListWidget.cpp:230
void removeImages(ImageList *images)
Removes an imagelist from the FileListWidget.
Definition ImageFileListWidget.cpp:446
void contextMenuEvent(QContextMenuEvent *event)
This method takes an event and gets all of the FootprintColumns, adds them to the menu,...
Definition ImageFileListWidget.cpp:474
PvlObject toPvl() const
This method writes the state of this class to a pvl.
Definition ImageFileListWidget.cpp:183
static QWidget * getLongHelp(QWidget *fileListContainer=NULL)
This method creates a QWidget that displays a long help message explaining the tool.
Definition ImageFileListWidget.cpp:268
QList< QAction * > getViewActions()
This method calls ImageTreeWidget::getViewActions() which returns a list of FootprintColumns.
Definition ImageFileListWidget.cpp:240
ImageFileListWidget(Directory *directory=0, QWidget *parent=0)
Constructor.
Definition ImageFileListWidget.cpp:46
void load(XmlStackedHandlerReader *xmlReader)
This method pushes a new XmlHandler into the parser stack.
Definition ImageFileListWidget.cpp:613
void filterFileList()
Definition ImageFileListWidget.cpp:878
QProgressBar * getProgress()
This method returns the progress bar.
Definition ImageFileListWidget.cpp:108
void fromPvl(PvlObject &pvl)
This method loads the state of this class from the pvl.
Definition ImageFileListWidget.cpp:119
void save(QXmlStreamWriter &stream, Project *project, FileName newProjectRoot) const
This method saves the FootprintColumns in the project and the settings associated with every column.
Definition ImageFileListWidget.cpp:626
QList< QAction * > getExportActions()
This method creates a new QAction which is connected and when triggered will save the cube list.
Definition ImageFileListWidget.cpp:250
This represents a cube in a project-based GUI interface.
Definition Image.h:107
Internalizes a list of images and allows for operations on the entire list.
Definition ImageList.h:55
Definition ImageTreeWidget.h:82
Definition ImageTreeWidget.h:42
The main project for ipce.
Definition Project.h:289
Contains Pvl Groups and Pvl Objects.
Definition PvlObject.h:61
XML Handler that parses XMLs in a stack-oriented way.
Definition XmlStackedHandler.h:118
Manage a stack of content handlers for reading XML files.
Definition XmlStackedHandlerReader.h:30
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16