Combines a QTableView along with a QmitkPropertiesTableModel to a reusable Property Editor component. More...
#include <QmitkPropertiesTableEditor.h>
Public Member Functions | |
QmitkPropertiesTableEditor (QWidget *parent=0, Qt::WindowFlags f=0, mitk::DataNode::Pointer _Node=0) | |
virtual | ~QmitkPropertiesTableEditor () |
void | SetPropertyList (mitk::PropertyList::Pointer _List) |
QmitkPropertiesTableModel * | getModel () const |
QTableView * | getTable () const |
Protected Slots | |
void | PropertyFilterKeyWordTextChanged (const QString &text) |
Protected Member Functions | |
virtual void | init () |
Protected Attributes | |
QTableView * | m_NodePropertiesTableView |
QLineEdit * | m_TxtPropertyFilterKeyWord |
QmitkPropertiesTableModel * | m_Model |
Combines a QTableView along with a QmitkPropertiesTableModel to a reusable Property Editor component.
Definition at line 38 of file QmitkPropertiesTableEditor.h.
QmitkPropertiesTableEditor::QmitkPropertiesTableEditor | ( | QWidget * | parent = 0 , |
Qt::WindowFlags | f = 0 , |
||
mitk::DataNode::Pointer | _Node = 0 |
||
) |
Constructs a new QmitkDataStorageTableModel and sets the DataNode for this TableModel.
Definition at line 36 of file QmitkPropertiesTableEditor.cpp.
References init(), m_Model, and m_NodePropertiesTableView.
: QWidget(parent, f) , m_NodePropertiesTableView(0) , m_Model(0) { // set up empty gui elements this->init(); // set up model m_Model = new QmitkPropertiesTableModel(m_NodePropertiesTableView, 0); m_NodePropertiesTableView->setModel(m_Model); }
QmitkPropertiesTableEditor::~QmitkPropertiesTableEditor | ( | ) | [virtual] |
Standard dtor. Nothing to do here.
Definition at line 50 of file QmitkPropertiesTableEditor.cpp.
{ }
QmitkPropertiesTableModel * QmitkPropertiesTableEditor::getModel | ( | ) | const |
Get the model.
Definition at line 108 of file QmitkPropertiesTableEditor.cpp.
References m_Model.
{ return m_Model; }
QTableView * QmitkPropertiesTableEditor::getTable | ( | ) | const |
Definition at line 156 of file QmitkPropertiesTableEditor.cpp.
References m_NodePropertiesTableView.
{ return m_NodePropertiesTableView; }
void QmitkPropertiesTableEditor::init | ( | ) | [protected, virtual] |
Initialise empty GUI.
Definition at line 113 of file QmitkPropertiesTableEditor.cpp.
References m_NodePropertiesTableView, m_TxtPropertyFilterKeyWord, and PropertyFilterKeyWordTextChanged().
Referenced by QmitkPropertiesTableEditor().
{ // read/ dim QVBoxLayout* _NodePropertiesLayout = new QVBoxLayout; QWidget* _PropertyFilterKeyWordPane = new QWidget(QWidget::parentWidget()); QHBoxLayout* _PropertyFilterKeyWordLayout = new QHBoxLayout; QLabel* _LabelPropertyFilterKeyWord = new QLabel("Filter: ",_PropertyFilterKeyWordPane); m_TxtPropertyFilterKeyWord = new QLineEdit(_PropertyFilterKeyWordPane); m_NodePropertiesTableView = new QTableView(QWidget::parentWidget()); // write setLayout(_NodePropertiesLayout); _PropertyFilterKeyWordPane->setLayout(_PropertyFilterKeyWordLayout); _PropertyFilterKeyWordLayout->setMargin(0); _PropertyFilterKeyWordLayout->addWidget(_LabelPropertyFilterKeyWord); _PropertyFilterKeyWordLayout->addWidget(m_TxtPropertyFilterKeyWord); _NodePropertiesLayout->setMargin(0); _NodePropertiesLayout->addWidget(_PropertyFilterKeyWordPane); _NodePropertiesLayout->addWidget(m_NodePropertiesTableView); m_NodePropertiesTableView->setSelectionMode( QAbstractItemView::SingleSelection ); m_NodePropertiesTableView->setSelectionBehavior( QAbstractItemView::SelectItems ); //m_NodePropertiesTableView->setEditTriggers(QAbstractItemView::DoubleClicked | QAbstractItemView::SelectedClicked | QAbstractItemView::EditKeyPressed); m_NodePropertiesTableView->verticalHeader()->hide(); m_NodePropertiesTableView->setItemDelegate(new QmitkPropertyDelegate(this)); m_NodePropertiesTableView->setAlternatingRowColors(true); //m_NodePropertiesTableView->horizontalHeader()->setStretchLastSection(true); m_NodePropertiesTableView->setSortingEnabled(true); m_NodePropertiesTableView->verticalHeader()->setResizeMode(QHeaderView::ResizeToContents); QObject::connect( m_TxtPropertyFilterKeyWord, SIGNAL( textChanged(const QString &) ) , this, SLOT( PropertyFilterKeyWordTextChanged(const QString &) ) ); }
void QmitkPropertiesTableEditor::PropertyFilterKeyWordTextChanged | ( | const QString & | text ) | [protected, slot] |
Definition at line 151 of file QmitkPropertiesTableEditor.cpp.
References m_Model, m_TxtPropertyFilterKeyWord, and QmitkPropertiesTableModel::SetFilterPropertiesKeyWord().
Referenced by init().
{ m_Model->SetFilterPropertiesKeyWord(m_TxtPropertyFilterKeyWord->text().toStdString()); }
void QmitkPropertiesTableEditor::SetPropertyList | ( | mitk::PropertyList::Pointer | _List ) |
Convenience method. Sets the property list in the model.
Definition at line 54 of file QmitkPropertiesTableEditor.cpp.
References m_Model, m_NodePropertiesTableView, and QmitkPropertiesTableModel::SetPropertyList().
Referenced by QmitkPropertyListView::OnSelectionChanged().
{ if(_List.IsNotNull()) { m_Model->SetPropertyList(_List); m_NodePropertiesTableView->resizeColumnsToContents(); m_NodePropertiesTableView->resizeRowsToContents(); m_NodePropertiesTableView->horizontalHeader()->setStretchLastSection(true); m_NodePropertiesTableView->setEditTriggers(QAbstractItemView::CurrentChanged); /* // refill the combo boxes m_ComboRenderer->clear(); for(mitk::BaseRenderer::BaseRendererMapType::iterator mapit = mitk::BaseRenderer::baseRendererMap.begin(); mapit != mitk::BaseRenderer::baseRendererMap.end(); mapit++) { if((*mapit).second->GetName()) { std::string winName((*mapit).second->GetName()); // winName.erase(0,winName.find("::")+2); m_ComboRenderer->insertItem(winName.c_str()); } } // try to select focused RenderWindow vtkRenderWindow* focusedRenderWindow = NULL; mitk::FocusManager* fm = mitk::GlobalInteraction::GetInstance()->GetFocusManager(); mitk::BaseRenderer::ConstPointer br = fm->GetFocused(); if (br.IsNotNull()) { focusedRenderWindow = br->GetRenderWindow(); } if (focusedRenderWindow) { m_ComboRenderer->setCurrentText(mitk::BaseRenderer::GetInstance(focusedRenderWindow)->GetName()); } else { m_ComboRenderer->setCurrentText("no focused window"); } */ } else { m_Model->SetPropertyList(0); } }
The property list table model.
Definition at line 86 of file QmitkPropertiesTableEditor.h.
Referenced by getModel(), PropertyFilterKeyWordTextChanged(), QmitkPropertiesTableEditor(), and SetPropertyList().
QTableView* QmitkPropertiesTableEditor::m_NodePropertiesTableView [protected] |
The table view that renders the property list.
Definition at line 77 of file QmitkPropertiesTableEditor.h.
Referenced by getTable(), init(), QmitkPropertiesTableEditor(), and SetPropertyList().
QLineEdit* QmitkPropertiesTableEditor::m_TxtPropertyFilterKeyWord [protected] |
A text field in which the user can enter a filter keyword for the properties. Only properties containing with this keyword will be selected.
Definition at line 82 of file QmitkPropertiesTableEditor.h.
Referenced by init(), and PropertyFilterKeyWordTextChanged().