#include <QmitkLevelWindowPresetDefinitionDialog.h>


Classes | |
| class | PresetTableModel |
Public Member Functions | |
| QmitkLevelWindowPresetDefinitionDialog (QWidget *parent=0, Qt::WindowFlags f=0) | |
| ~QmitkLevelWindowPresetDefinitionDialog () | |
| void | setPresets (std::map< std::string, double > &level, std::map< std::string, double > &window, QString initLevel, QString initWindow) |
| std::map< std::string, double > | getLevelPresets () |
| std::map< std::string, double > | getWindowPresets () |
Protected Slots | |
| void | addPreset () |
| void | removePreset () |
| void | changePreset () |
| void | ListViewSelectionChanged (const QItemSelection &, const QItemSelection &) |
| void | sortPresets (int index) |
Protected Member Functions | |
| void | resizeEvent (QResizeEvent *event) |
| void | showEvent (QShowEvent *event) |
| void | resizeColumns () |
Protected Attributes | |
| PresetTableModel * | m_TableModel |
| QSortFilterProxyModel | m_SortModel |
Definition at line 31 of file QmitkLevelWindowPresetDefinitionDialog.h.
| QmitkLevelWindowPresetDefinitionDialog::QmitkLevelWindowPresetDefinitionDialog | ( | QWidget * | parent = 0, |
| Qt::WindowFlags | f = 0 |
||
| ) |
Definition at line 24 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References Ui_QmitkLevelWindowPresetDefinition::addButton, addPreset(), Ui_QmitkLevelWindowPresetDefinition::changeButton, changePreset(), m_SortModel, Ui_QmitkLevelWindowPresetDefinition::presetView, Ui_QmitkLevelWindowPresetDefinition::removeButton, removePreset(), Ui_QmitkLevelWindowPresetDefinition::setupUi(), and sortPresets().
: QDialog(parent, f), m_TableModel(0), m_SortModel(this) { this->setupUi(this); QObject::connect(addButton, SIGNAL(clicked()), this, SLOT(addPreset())); QObject::connect(removeButton, SIGNAL(clicked()), this, SLOT(removePreset())); QObject::connect(changeButton, SIGNAL(clicked()), this, SLOT(changePreset())); QObject::connect(presetView->horizontalHeader(), SIGNAL(sectionClicked(int)), this, SLOT(sortPresets(int))); presetView->verticalHeader()->setVisible(false); presetView->horizontalHeader()->setResizeMode(QHeaderView::Fixed); //presetView->horizontalHeader()->setResizeMode(0, QHeaderView::Stretch); //presetView->horizontalHeader()->setResizeMode(1, QHeaderView::ResizeToContents); //presetView->horizontalHeader()->setResizeMode(2, QHeaderView::ResizeToContents); presetView->setModel(&m_SortModel); }
| QmitkLevelWindowPresetDefinitionDialog::~QmitkLevelWindowPresetDefinitionDialog | ( | ) |
Definition at line 44 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References m_TableModel.
{
delete m_TableModel;
}
| void QmitkLevelWindowPresetDefinitionDialog::addPreset | ( | ) | [protected, slot] |
Definition at line 80 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::addPreset(), QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::contains(), Ui_QmitkLevelWindowPresetDefinition::levelSpinBox, m_TableModel, Ui_QmitkLevelWindowPresetDefinition::presetnameLineEdit, and Ui_QmitkLevelWindowPresetDefinition::windowSpinBox.
Referenced by QmitkLevelWindowPresetDefinitionDialog().
{
std::string name(presetnameLineEdit->text().toStdString());
if (m_TableModel->contains(name))
{
QMessageBox::critical( this, "Preset definition",
"Presetname already exists.\n"
"You have to enter another one." );
}
else if (presetnameLineEdit->text() == "")
{
QMessageBox::critical( this, "Preset definition",
"Presetname has to be set.\n"
"You have to enter a Presetname." );
}
else
{
m_TableModel->addPreset(name, levelSpinBox->value(), windowSpinBox->value());
}
}
| void QmitkLevelWindowPresetDefinitionDialog::changePreset | ( | ) | [protected, slot] |
Definition at line 111 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::changePreset(), QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::contains(), QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::getPreset(), Ui_QmitkLevelWindowPresetDefinition::levelSpinBox, m_TableModel, Ui_QmitkLevelWindowPresetDefinition::presetnameLineEdit, Ui_QmitkLevelWindowPresetDefinition::presetView, and Ui_QmitkLevelWindowPresetDefinition::windowSpinBox.
Referenced by QmitkLevelWindowPresetDefinitionDialog().
{
if (presetView->selectionModel()->hasSelection())
{
std::string name(presetnameLineEdit->text().toStdString());
if (name == "")
{
QMessageBox::critical( this, "Preset definition",
"Presetname has to be set.\n"
"You have to enter a Presetname." );
}
else if (m_TableModel->contains(name)
&& (m_TableModel->getPreset(presetView->selectionModel()->currentIndex()).name
!= name))
{
QMessageBox::critical( this, "Preset definition",
"Presetname already exists.\n"
"You have to enter another one." );
}
else
{
m_TableModel->changePreset(presetView->selectionModel()->currentIndex().row(),
name, levelSpinBox->value(), windowSpinBox->value());
}
}
}
| std::map< std::string, double > QmitkLevelWindowPresetDefinitionDialog::getLevelPresets | ( | ) |
Definition at line 157 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::getLevels(), and m_TableModel.
Referenced by QmitkLevelWindowWidgetContextMenu::addPreset().
{
std::map<std::string, double> levels;
m_TableModel->getLevels(levels);
return levels;
}
| std::map< std::string, double > QmitkLevelWindowPresetDefinitionDialog::getWindowPresets | ( | ) |
Definition at line 165 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::getWindows(), and m_TableModel.
Referenced by QmitkLevelWindowWidgetContextMenu::addPreset().
{
std::map<std::string, double> windows;
m_TableModel->getWindows(windows);
return windows;
}
| void QmitkLevelWindowPresetDefinitionDialog::ListViewSelectionChanged | ( | const QItemSelection & | selected, |
| const QItemSelection & | |||
| ) | [protected, slot] |
Definition at line 173 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::getPreset(), QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::Entry::level, Ui_QmitkLevelWindowPresetDefinition::levelSpinBox, m_TableModel, QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::Entry::name, Ui_QmitkLevelWindowPresetDefinition::presetnameLineEdit, QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::Entry::window, and Ui_QmitkLevelWindowPresetDefinition::windowSpinBox.
Referenced by setPresets().
{
QModelIndexList indexes(selected.indexes());
if (indexes.empty())
{
presetnameLineEdit->setText("");
levelSpinBox->setValue(0);
windowSpinBox->setValue(0);
}
else
{
PresetTableModel::Entry entry(m_TableModel->getPreset(indexes.first()));
presetnameLineEdit->setText(QString(entry.name.c_str()));
levelSpinBox->setValue((int)entry.level);
windowSpinBox->setValue((int)entry.window);
}
}
| void QmitkLevelWindowPresetDefinitionDialog::removePreset | ( | ) | [protected, slot] |
Definition at line 102 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References m_TableModel, Ui_QmitkLevelWindowPresetDefinition::presetView, and QmitkLevelWindowPresetDefinitionDialog::PresetTableModel::removePreset().
Referenced by QmitkLevelWindowPresetDefinitionDialog().
{
QModelIndex index(presetView->selectionModel()->currentIndex());
if (!index.isValid()) return;
m_TableModel->removePreset(index);
}
| void QmitkLevelWindowPresetDefinitionDialog::resizeColumns | ( | ) | [protected] |
Definition at line 72 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References Ui_QmitkLevelWindowPresetDefinition::presetView.
Referenced by resizeEvent(), and showEvent().
{
int width = presetView->viewport()->size().width() - presetView->columnWidth(1) - presetView->columnWidth(2);
if (width < 50) width = 50;
presetView->setColumnWidth(0, width);
}
| void QmitkLevelWindowPresetDefinitionDialog::resizeEvent | ( | QResizeEvent * | event ) | [protected] |
Definition at line 58 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References resizeColumns().
{
QDialog::resizeEvent(event);
this->resizeColumns();
}
| void QmitkLevelWindowPresetDefinitionDialog::setPresets | ( | std::map< std::string, double > & | level, |
| std::map< std::string, double > & | window, | ||
| QString | initLevel, | ||
| QString | initWindow | ||
| ) |
Definition at line 139 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References Ui_QmitkLevelWindowPresetDefinition::levelSpinBox, ListViewSelectionChanged(), m_SortModel, m_TableModel, Ui_QmitkLevelWindowPresetDefinition::presetView, sortPresets(), and Ui_QmitkLevelWindowPresetDefinition::windowSpinBox.
Referenced by QmitkLevelWindowWidgetContextMenu::addPreset().
{
levelSpinBox->setValue(initLevel.toInt());
windowSpinBox->setValue(initWindow.toInt());
delete m_TableModel;
m_TableModel = new PresetTableModel(level, window, this);
m_SortModel.setSourceModel(m_TableModel);
QObject::connect(presetView->selectionModel(), SIGNAL(selectionChanged(const QItemSelection&, const QItemSelection&)), this, SLOT(ListViewSelectionChanged(const QItemSelection&, const QItemSelection&)));
this->sortPresets(0);
presetView->resizeColumnsToContents();
}
| void QmitkLevelWindowPresetDefinitionDialog::showEvent | ( | QShowEvent * | event ) | [protected] |
Definition at line 65 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References resizeColumns().
{
this->resizeColumns();
QDialog::showEvent(event);
}
| void QmitkLevelWindowPresetDefinitionDialog::sortPresets | ( | int | index ) | [protected, slot] |
Definition at line 49 of file QmitkLevelWindowPresetDefinitionDialog.cpp.
References Ui_QmitkLevelWindowPresetDefinition::presetView.
Referenced by QmitkLevelWindowPresetDefinitionDialog(), and setPresets().
{
static Qt::SortOrder order[3] = {Qt::AscendingOrder};
presetView->sortByColumn(index, order[index]);
if (order[index] == Qt::AscendingOrder) order[index] = Qt::DescendingOrder;
else order[index] = Qt::AscendingOrder;
}
QSortFilterProxyModel QmitkLevelWindowPresetDefinitionDialog::m_SortModel [protected] |
Definition at line 105 of file QmitkLevelWindowPresetDefinitionDialog.h.
Referenced by QmitkLevelWindowPresetDefinitionDialog(), and setPresets().
Definition at line 104 of file QmitkLevelWindowPresetDefinitionDialog.h.
Referenced by addPreset(), changePreset(), getLevelPresets(), getWindowPresets(), ListViewSelectionChanged(), removePreset(), setPresets(), and ~QmitkLevelWindowPresetDefinitionDialog().
1.7.2