Isis Developer Reference
TableColumnList.h
Go to the documentation of this file.
1#ifndef TableColumnList_H
2#define TableColumnList_H
3
10/* SPDX-License-Identifier: CC0-1.0 */
11
12#include <QObject>
13
14template<typename A, typename B> struct QPair;
15
16
17namespace Isis {
18 class TableColumn;
19
30 class TableColumnList : public QObject {
31 Q_OBJECT
32
33 public:
36 virtual ~TableColumnList();
37
38 TableColumn * &operator[](int index);
39 TableColumn * &operator[](QString title);
40
41 void append(TableColumn *newCol);
42 void prepend(TableColumn *newCol);
43
44 int indexOf(TableColumn const *someCol) const;
45 bool contains(TableColumn const *someCol) const;
46 bool contains(QString columnTitle) const;
47
48 QPair< int, int > getVisibleXRange(int visibleColumn);
50
51 int getVisibleWidth() const;
52
53 QList< TableColumn * > getSortingOrder();
55 void setSortingOrder(QStringList newOrder);
56 void lower(TableColumn *col, bool emitSortOutDated = true);
57 // void lower(int visibleColumnIndex, bool emitSortOutDated = true);
58 void raise(TableColumn *col, bool emitSortOutDated = true);
59 // void raise(int visibleColumnIndex, bool emitSortOutDated = true);
60 void raiseToTop(TableColumn *col);
61 // void raiseToTop(int visibleColumnIndex);
62
63 int size() const;
64
66
67
68 signals:
70
71
72 private:
73 void checkIndexRange(int index);
74 void nullify();
75
76
77 private:
78 QList< TableColumn * > * m_cols;
79 QList< TableColumn * > * m_sortingOrder;
80 };
81}
82
83#endif
Definition TableColumn.h:26
Definition TableColumnList.h:30
void append(TableColumn *newCol)
Definition TableColumnList.cpp:70
void prepend(TableColumn *newCol)
Definition TableColumnList.cpp:82
TableColumn *& operator[](int index)
Definition TableColumnList.cpp:51
QPair< int, int > getVisibleXRange(int visibleColumn)
Definition TableColumnList.cpp:181
QList< TableColumn * > getSortingOrder()
Definition TableColumnList.cpp:238
int indexOf(TableColumn const *someCol) const
Definition TableColumnList.cpp:88
int size() const
Definition TableColumnList.cpp:164
void lower(TableColumn *col, bool emitSortOutDated=true)
Definition TableColumnList.cpp:111
void raiseToTop(TableColumn *col)
Definition TableColumnList.cpp:151
void raise(TableColumn *col, bool emitSortOutDated=true)
Definition TableColumnList.cpp:131
virtual ~TableColumnList()
Definition TableColumnList.cpp:42
TableColumnList getVisibleColumns()
Definition TableColumnList.cpp:201
TableColumnList & operator=(TableColumnList other)
Definition TableColumnList.cpp:169
int getVisibleWidth() const
Definition TableColumnList.cpp:225
bool contains(TableColumn const *someCol) const
Definition TableColumnList.cpp:98
TableColumnList()
Definition TableColumnList.cpp:26
void setSortingOrder(QStringList newOrder)
Definition TableColumnList.cpp:259
QStringList getSortingOrderAsStrings() const
Definition TableColumnList.cpp:249
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16
This is free and unencumbered software released into the public domain.
Definition CubeIoHandler.h:23