自定义内存分配池
This commit is contained in:
@@ -5,10 +5,10 @@ namespace Psc {
|
||||
// using T_Data = std::shared_ptr<Table_Data>;
|
||||
struct Edit_Func {
|
||||
virtual ~Edit_Func() = default;
|
||||
virtual bool insert_row(int pos, const QVector<Row_Info*>& infos, const QVector<QVector<Base_Table_Data*>>& data, Edge_Expand_Type t) {
|
||||
virtual bool insert_row(int pos, const std::vector<Row_Info*>& infos, const std::vector<std::vector<Base_Table_Data*>>& data, Edge_Expand_Type t) {
|
||||
return true;
|
||||
}
|
||||
virtual bool insert_col(int pos, const QVector<Col_Info*>& infos, const QVector<QVector<Base_Table_Data*>>& data, Edge_Expand_Type t) {
|
||||
virtual bool insert_col(int pos, const std::vector<Col_Info*>& infos, const std::vector<std::vector<Base_Table_Data*>>& data, Edge_Expand_Type t) {
|
||||
return true;
|
||||
}
|
||||
virtual bool remove_row(int pos, int num) {
|
||||
@@ -58,8 +58,8 @@ Pos get_pos(Base_Info** infos, int n, int space, int pos, int margin);
|
||||
struct Memory_Table_Model : Base_Table_Model, Edit_Func {
|
||||
void split(int row, int col, int row_span, int col_span) override;
|
||||
void merge(int row, int col, int row_span, int col_span) override;
|
||||
bool insert_row(int pos, const QVector<Row_Info*>& infos, const QVector<QVector<Base_Table_Data*>>& data, Edge_Expand_Type) override;
|
||||
bool insert_col(int pos, const QVector<Col_Info*>& infos, const QVector<QVector<Base_Table_Data*>>& data, Edge_Expand_Type) override;
|
||||
bool insert_row(int pos, const std::vector<Row_Info*>& infos, const std::vector<std::vector<Base_Table_Data*>>& data, Edge_Expand_Type) override;
|
||||
bool insert_col(int pos, const std::vector<Col_Info*>& infos, const std::vector<std::vector<Base_Table_Data*>>& data, Edge_Expand_Type) override;
|
||||
bool remove_row(int pos, int num) override;
|
||||
bool remove_col(int pos, int num) override;
|
||||
// 表格区域绝对位置计算
|
||||
@@ -87,9 +87,9 @@ struct Memory_Table_Model : Base_Table_Model, Edit_Func {
|
||||
return data[col][row];
|
||||
}
|
||||
protected:
|
||||
QVector<Col_Info*> col_info_list;
|
||||
QVector<Row_Info*> row_info_list;
|
||||
QVector<QVector<Base_Table_Data*>> data;
|
||||
std::vector<Col_Info*> col_info_list;
|
||||
std::vector<Row_Info*> row_info_list;
|
||||
std::vector<std::vector<Base_Table_Data*>> data;
|
||||
friend Table_View* create_table_view();
|
||||
friend Table_View* create_table_view2();
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user