mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-29 21:50:26 +00:00
d500f56d6f
Even that most (or all) tables have the remove button at the section 0, the method defaultColumnWidth should not assume that it will always be true. This patch will consider the title width of each section, instead of using a static width (which cause problems when the language is not en). Signed-off-by: Marcos Cardinot <mcardinot@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
54 lines
1.3 KiB
C++
54 lines
1.3 KiB
C++
#ifndef TABLEVIEW_H
|
|
#define TABLEVIEW_H
|
|
|
|
/* This TableView is prepared to have the CSS,
|
|
* the methods to restore / save the state of
|
|
* the column widths and the 'plus' button.
|
|
*/
|
|
#include <QWidget>
|
|
|
|
#include "ui_tableview.h"
|
|
|
|
#include "metrics.h"
|
|
|
|
class QPushButton;
|
|
class QAbstractItemModel;
|
|
class QModelIndex;
|
|
class QTableView;
|
|
|
|
class TableView : public QGroupBox {
|
|
Q_OBJECT
|
|
|
|
struct TableMetrics {
|
|
const IconMetrics* icon; // icon metrics
|
|
int rm_col_width; // column width of REMOVE column
|
|
int header_ht; // height of the header
|
|
};
|
|
public:
|
|
TableView(QWidget *parent = 0);
|
|
virtual ~TableView();
|
|
/* The model is expected to have a 'remove' slot, that takes a QModelIndex as parameter.
|
|
* It's also expected to have the column '1' as a trash icon. I most probably should create a
|
|
* proxy model and add that column, will mark that as TODO. see? marked.
|
|
*/
|
|
void setModel(QAbstractItemModel *model);
|
|
void setBtnToolTip(const QString &tooltip);
|
|
void fixPlusPosition();
|
|
void edit(const QModelIndex &index);
|
|
int defaultColumnWidth(int col); // default column width for column col
|
|
QTableView *view();
|
|
|
|
protected:
|
|
virtual void showEvent(QShowEvent *);
|
|
virtual void resizeEvent(QResizeEvent *);
|
|
|
|
signals:
|
|
void addButtonClicked();
|
|
|
|
private:
|
|
Ui::TableView ui;
|
|
QPushButton *plusBtn;
|
|
TableMetrics metrics;
|
|
};
|
|
|
|
#endif // TABLEVIEW_H
|