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().
1.7.2