| 406 | } |
| 407 | |
| 408 | void Matrix::removeRows(int first, int count) { |
| 409 | if (count < 1 || first < 0 || first + count > rowCount()) |
| 410 | return; |
| 411 | WAIT_CURSOR; |
| 412 | Q_D(Matrix); |
| 413 | switch (d->mode) { |
| 414 | case AbstractColumn::ColumnMode::Double: |
| 415 | exec(new MatrixRemoveRowsCmd<double>(d, first, count)); |
| 416 | break; |
| 417 | case AbstractColumn::ColumnMode::Text: |
| 418 | exec(new MatrixRemoveRowsCmd<QString>(d, first, count)); |
| 419 | break; |
| 420 | case AbstractColumn::ColumnMode::Integer: |
| 421 | exec(new MatrixRemoveRowsCmd<int>(d, first, count)); |
| 422 | break; |
| 423 | case AbstractColumn::ColumnMode::BigInt: |
| 424 | exec(new MatrixRemoveRowsCmd<qint64>(d, first, count)); |
| 425 | break; |
| 426 | case AbstractColumn::ColumnMode::Day: |
| 427 | case AbstractColumn::ColumnMode::Month: |
| 428 | case AbstractColumn::ColumnMode::DateTime: |
| 429 | exec(new MatrixRemoveRowsCmd<QDateTime>(d, first, count)); |
| 430 | break; |
| 431 | } |
| 432 | RESET_CURSOR; |
| 433 | } |
| 434 | |
| 435 | void Matrix::clearRow(int r) { |
| 436 | Q_D(Matrix); |