#include <QmitkInfoDialog.h>
Public Slots | |
| void | OnSelectionChanged (const mitk::DataNode *) |
| void | OnSearchButtonClicked (bool checked=false) |
| void | OnCancelButtonClicked (bool checked=false) |
| void | KeyWordTextChanged (const QString &text) |
Public Member Functions | |
| QmitkInfoDialog (std::vector< mitk::DataNode * > _Nodes, QWidget *parent=0, Qt::WindowFlags f=0) | |
Protected Member Functions | |
| bool | eventFilter (QObject *obj, QEvent *event) |
Protected Attributes | |
| QLineEdit * | m_KeyWord |
| QPushButton * | m_SearchButton |
| QTextBrowser * | m_TextBrowser |
A small class which "eats" all Del-Key-pressed events on the node table. When the Del Key is pressed selected nodes should be removed.
Definition at line 37 of file QmitkInfoDialog.h.
| QmitkInfoDialog::QmitkInfoDialog | ( | std::vector< mitk::DataNode * > | _Nodes, |
| QWidget * | parent = 0, |
||
| Qt::WindowFlags | f = 0 |
||
| ) |
Definition at line 31 of file QmitkInfoDialog.cpp.
References QmitkDataStorageComboBox::AddNode(), KeyWordTextChanged(), m_KeyWord, m_SearchButton, m_TextBrowser, OnCancelButtonClicked(), OnSearchButtonClicked(), and OnSelectionChanged().
: QDialog(parent, f)
{
// DIM
QGridLayout* parentLayout = new QGridLayout;
QmitkDataStorageComboBox* _QmitkDataStorageComboBox = new QmitkDataStorageComboBox(this, true);
m_KeyWord = new QLineEdit;
m_KeyWord->installEventFilter(this);
m_SearchButton = new QPushButton("Search (F3)", this);
m_SearchButton->installEventFilter(this);
m_TextBrowser = new QTextBrowser(this);
QPushButton* _CancelButton = new QPushButton("Cancel", this);
// SET
this->setMinimumSize(512, 512);
this->setLayout(parentLayout);
this->setSizeGripEnabled(true);
this->setModal(true);
parentLayout->addWidget(_QmitkDataStorageComboBox, 0, 0, 1, 2);
parentLayout->addWidget(m_KeyWord, 1, 0);
parentLayout->addWidget(m_SearchButton, 1, 1);
parentLayout->addWidget(m_TextBrowser, 2, 0, 1, 2);
parentLayout->addWidget(_CancelButton, 3, 0, 1, 2);
QObject::connect( _QmitkDataStorageComboBox, SIGNAL( OnSelectionChanged( const mitk::DataNode* ) )
, this, SLOT( OnSelectionChanged( const mitk::DataNode* ) ) );
for (std::vector<mitk::DataNode*>::iterator it = _Nodes.begin()
; it != _Nodes.end(); it++)
{
_QmitkDataStorageComboBox->AddNode(*it);
}
QObject::connect( m_KeyWord, SIGNAL( textChanged ( const QString & ) )
, this, SLOT( KeyWordTextChanged(const QString &) ) );
QObject::connect( m_SearchButton, SIGNAL( clicked ( bool ) )
, this, SLOT( OnSearchButtonClicked( bool ) ) );
QObject::connect( _CancelButton, SIGNAL( clicked ( bool ) )
, this, SLOT( OnCancelButtonClicked( bool ) ) );
_CancelButton->setDefault(true);
}
| bool QmitkInfoDialog::eventFilter | ( | QObject * | obj, |
| QEvent * | event | ||
| ) | [protected] |
Definition at line 105 of file QmitkInfoDialog.cpp.
References mitk::Key_F3, mitk::Key_Return, and OnSearchButtonClicked().
{
if (event->type() == QEvent::KeyPress)
{
QKeyEvent *keyEvent = static_cast<QKeyEvent *>(event);
if(keyEvent->key() == Qt::Key_F3 || keyEvent->key() == Qt::Key_Return)
{
// trigger deletion of selected node(s)
this->OnSearchButtonClicked(true);
// return true: this means the delete key event is not send to the table
return true;
}
}
// standard event processing
return QObject::eventFilter(obj, event);
}
| void QmitkInfoDialog::KeyWordTextChanged | ( | const QString & | text ) | [slot] |
Definition at line 122 of file QmitkInfoDialog.cpp.
References m_SearchButton, and m_TextBrowser.
Referenced by QmitkInfoDialog().
{
QTextCursor textCursor = m_TextBrowser->textCursor();
textCursor.setPosition(0);
m_TextBrowser->setTextCursor(textCursor);
m_SearchButton->setText("Search (F3)");
}
| void QmitkInfoDialog::OnCancelButtonClicked | ( | bool | checked = false ) |
[slot] |
Definition at line 100 of file QmitkInfoDialog.cpp.
Referenced by QmitkInfoDialog().
{
this->done(0);
}
| void QmitkInfoDialog::OnSearchButtonClicked | ( | bool | checked = false ) |
[slot] |
Definition at line 88 of file QmitkInfoDialog.cpp.
References m_KeyWord, m_SearchButton, and m_TextBrowser.
Referenced by eventFilter(), and QmitkInfoDialog().
{
QString keyWord = m_KeyWord->text();
QString text = m_TextBrowser->toPlainText();
if(keyWord.isEmpty() || text.isEmpty())
return;
m_TextBrowser->find(keyWord);
m_SearchButton->setText("Search Next(F3)");
}
| void QmitkInfoDialog::OnSelectionChanged | ( | const mitk::DataNode * | node ) | [slot] |
Definition at line 78 of file QmitkInfoDialog.cpp.
References mitk::DataNode::GetData(), and m_TextBrowser.
Referenced by QmitkInfoDialog().
{
std::ostringstream s;
itk::Indent i(2);
mitk::BaseData* _BaseData = node->GetData();
if(_BaseData)
_BaseData->Print(s, i);
m_TextBrowser->setPlainText(QString::fromStdString(s.str()));
}
QLineEdit* QmitkInfoDialog::m_KeyWord [protected] |
Definition at line 51 of file QmitkInfoDialog.h.
Referenced by OnSearchButtonClicked(), and QmitkInfoDialog().
QPushButton* QmitkInfoDialog::m_SearchButton [protected] |
Definition at line 52 of file QmitkInfoDialog.h.
Referenced by KeyWordTextChanged(), OnSearchButtonClicked(), and QmitkInfoDialog().
QTextBrowser* QmitkInfoDialog::m_TextBrowser [protected] |
Definition at line 53 of file QmitkInfoDialog.h.
Referenced by KeyWordTextChanged(), OnSearchButtonClicked(), OnSelectionChanged(), and QmitkInfoDialog().
1.7.2