Isis 3 Programmer Reference
TableMainWindow.h
1#ifndef TableMainWindow_h
2#define TableMainWindow_h
3
4#include <QMainWindow>
5#include <QMenu>
6
7#include <QListWidgetItem>
8#include <QPointer>
9
10#include "MainWindow.h"
11
12class QTableWidget;
13
14namespace Isis {
57 class TableMainWindow : public MainWindow {
58 Q_OBJECT
59 public:
60 TableMainWindow(QString title, QWidget *parent = 0);
62
63 void clear();
64
70 QTableWidget *table() const {
71 return p_table;
72 };
73
74
75 QList<QListWidgetItem *> itemList() const;
76
77
84 QListWidget *listWidget() const {
85 return p_listWidget;
86 };
87
94 int selectedRows() const {
95 return p_selectedRows;
96 };
97
104 int currentIndex() const {
105 return p_currentIndex;
106 };
107
114 int currentRow() const {
115 return p_currentRow;
116 };
117
118 void addToTable(bool setOn, const QString &heading,
119 const QString &menuText = "", int insertAt = -1,
120 Qt::Orientation o = Qt::Horizontal, QString toolTip = "");
121 void deleteColumn(int item);
122 void setStatusMessage(QString message);
123 void closeEvent(QCloseEvent *event);
124 void hideEvent(QHideEvent *event);
125
126 public slots:
127 void showTable();
128 void syncColumns();
129 void syncRows();
130 void saveAsTable();
131 void saveTable();
132 void clearTable();
133 void deleteRows();
134 void clearRow(int row);
135 void setCurrentRow(int row);
137 void setTrackListItems(bool track = false);
138 bool trackListItems();
139 void loadTable();
140 void writeSettings() const;
141 void resizeColumn(int columnIndex);
142
143 signals:
149
150 protected:
151 bool eventFilter(QObject *o, QEvent *e);
152 void createTable();
153 void readItemSettings(QString heading, QListWidgetItem *item,
154 bool defaultChecked);
155
156 void readColumnSettings();
157
158 private:
159 std::string p_appName;
161 QString p_title;
163
166
167 QTableWidget *p_table;
168 QPointer<QListWidget> p_listWidget;
172
174 QList<int>p_startColumn;
175 QList<int>p_endColumn;
177
178 };
179};
180
181#endif
Base class for the Qisis main windows.
Definition MainWindow.h:24
a subclass of the qisis mainwindow, tablemainwindow handles all of the table tasks.
bool p_trackItems
Boolean to track items.
QTableWidget * table() const
Returns the table.
void loadTable()
This method loads a text file into the table.
void showTable()
This method checks to see if the table has been created.
void addToTable(bool setOn, const QString &heading, const QString &menuText="", int insertAt=-1, Qt::Orientation o=Qt::Horizontal, QString toolTip="")
Adds a new column to the table when a new curve is added to the plot.
QPointer< QListWidget > p_listWidget
List widget.
void setCurrentRow(int row)
Sets the current row to row.
void fileLoaded()
Signal emitted when a file has loaded.
bool eventFilter(QObject *o, QEvent *e)
This event filter is installed in the constructor.
void createTable()
This creates the table main window.
QTableWidget * p_table
The table.
int p_currentIndex
Current index.
void writeSettings() const
This overriden method is called when the Tablemainwindow is closed or hidden to write the size and lo...
void hideEvent(QHideEvent *event)
int p_visibleColumns
Number of visible columns.
QWidget * p_parent
The parent widget.
void clearTable()
This method clears all items from each row and column.
bool trackListItems()
Returns whether or not we should track items.
void readColumnSettings()
This method reads the columns in the table and sets their size to the appropriate size,...
int currentRow() const
Returns the current row.
QList< int > p_endColumn
List of end columns.
int currentIndex() const
Returns the current index.
void syncColumns()
This method hides and shows the columns according to which items the user has selected to be view-abl...
void setTrackListItems(bool track=false)
If this property is true, the class will keep track of the checked/unchecked items in the dock area w...
void deleteRows()
This method is called when the user selects a row or rows uses the delete button or selects the delet...
QString p_title
The title string.
QFile p_currentFile
The current file.
QDockWidget * p_dock
The dock widget.
int p_selectedRows
Number of selected rows.
int selectedRows() const
Returns the selected rows.
void closeEvent(QCloseEvent *event)
void clearRow(int row)
This method clears the text of the given row.
void deleteColumn(int item)
This method deletes a column from the table.
void syncRows()
Use this method to sync the table with the dock widget list if the table orientation is horizontal.
int p_currentRow
Current row.
void readItemSettings(QString heading, QListWidgetItem *item, bool defaultChecked)
This method reads the 'checked' settings on the items listed in the dock area which determine which t...
TableMainWindow(QString title, QWidget *parent=0)
Constructs a new TableMainWindow object.
void saveAsTable()
This method will select a file, set it as the current file and save the table.
void saveTable()
This method allows the user to save the data from the table to the current file.
std::string p_appName
The application name.
QAction * p_save
Action to save the table to the current file.
void setCurrentIndex(int currentIndex)
Sets the current index to currentIndex.
void setStatusMessage(QString message)
sets the status message in the lower lefthand corner of the window.
QListWidget * listWidget() const
Returns the list widget.
QList< int > p_startColumn
List of start columns.
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16