Skip to content
Snippets Groups Projects
Select Git revision
  • fe79411ba240822e8860eba1cf50674963e3ccdd
  • master default
  • mingw_gcc44
  • release_ABP1_012
  • release_ABP1_008
  • release_ABP1_006
  • release_ABP1_007
  • release_ABP1_005
  • release_ABP1_004
  • release_ABP1_003
  • pre_release_0.15
  • release_ABP1_001
  • release_ABP1_002
  • pre_release_0.13
  • pre_release_0.14
  • pre_release_0.11
  • pre_release_0.12
  • pre_release_0.10
  • pre_release_0.09
  • pre_release_0.08
20 results

footer.html

Blame
  • Forked from einsteinathome / graphicsframework
    Source project has a limited visibility.
    preseteditor.cpp 1.41 KiB
    #include "preseteditor.h"
    #include "ui_preseteditor.h"
    
    PresetEditor::PresetEditor(PresetModel *model, QWidget *parent) :
        QDialog(parent),
        ui(new Ui::PresetEditor)
    {
        ui->setupUi(this);
        ui->tableView->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
    
        // backup original model (for rejecting changes)
        m_model_backup = new QStandardItemModel();
        PresetModel::copyItems(model, m_model_backup);
    
        // assign current model and adjust widget sizes based on content
        m_model = model;
        ui->tableView->setModel(m_model);
        ui->tableView->adjustSize();
        this->adjustSize();
    }
    
    PresetEditor::~PresetEditor()
    {
        delete ui;
        delete m_model_backup;
    }
    
    void PresetEditor::accept()
    {
        m_model->save();
        QDialog::accept();
    }
    
    void PresetEditor::reject()
    {
        PresetModel::copyItems(m_model_backup, m_model);
        m_model_backup->clear();
        QDialog::reject();
    }
    
    void PresetEditor::on_btnAdd_clicked(bool checked = false)
    {
        QList<QStandardItem*> row;
        for(int i=0; i < m_model->columnCount(); i++) {
            row.append(new QStandardItem(""));
        }
        m_model->appendRow(row);
        ui->tableView->selectRow(m_model->rowCount()-1);
    }
    
    void PresetEditor::on_btnDel_clicked(bool checked = false)
    {
        QModelIndexList selection = ui->tableView->selectionModel()->selectedRows();
        for(int i=0; i < selection.length(); i++) {
            m_model->removeRow(selection[i].row());
        }
    }