Add initial project structure with essential files including .gitignore, application resources, and various model and view components for the application. Implemented asynchronous parsing support and database structure checks.
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
#ifndef STICKYTABLEVIEW_H
|
||||
#define STICKYTABLEVIEW_H
|
||||
|
||||
#include <QTableView>
|
||||
#include <QHeaderView>
|
||||
#include <QScrollBar>
|
||||
#include <QPainter>
|
||||
#include <QApplication>
|
||||
|
||||
class StickyTableView : public QTableView
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit StickyTableView(QWidget *parent = nullptr);
|
||||
|
||||
// Установить количество липких столбцов (по умолчанию 1 - только обозначение)
|
||||
void setStickyColumns(int count);
|
||||
|
||||
// Получить количество липких столбцов
|
||||
int stickyColumns() const { return m_stickyColumns; }
|
||||
|
||||
protected:
|
||||
void paintEvent(QPaintEvent *event) override;
|
||||
void scrollContentsBy(int dx, int dy) override;
|
||||
void resizeEvent(QResizeEvent *event) override;
|
||||
|
||||
private:
|
||||
void updateStickyColumnGeometry();
|
||||
void paintStickyColumns(QPainter *painter);
|
||||
|
||||
int m_stickyColumns;
|
||||
int m_stickyColumnWidth;
|
||||
bool m_isScrolling;
|
||||
};
|
||||
|
||||
#endif // STICKYTABLEVIEW_H
|
||||
Reference in New Issue
Block a user