geopro/src/app/panels/columns/ColumnDrawer.hpp

36 lines
959 B
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#pragma once
#include <QWidget>
class QPushButton;
namespace geopro::app {
class Column3DDataset;
class Column2DDataset;
class Column3DAnalysis;
// VTK视图左侧内嵌抽屉三 tab(三维数据集/二维数据集/三维分析) + 折叠开关。
class ColumnDrawer : public QWidget {
Q_OBJECT
public:
explicit ColumnDrawer(QWidget* parent = nullptr);
Column3DDataset* col3D() const { return col3D_; }
Column2DDataset* col2D() const { return col2D_; }
Column3DAnalysis* colAnalysis() const { return colAnalysis_; }
public slots:
void toggleCollapsed();
void expand(); // 强制展开(进入全屏时确保三栏可见)
private:
Column3DDataset* col3D_ = nullptr;
Column2DDataset* col2D_ = nullptr;
Column3DAnalysis* colAnalysis_ = nullptr;
QWidget* body_ = nullptr; // QTabWidget折叠时隐藏
QPushButton* toggleBtn_ = nullptr;
bool collapsed_ = false;
};
} // namespace geopro::app