Public Member Functions | Protected Slots | Protected Member Functions | Protected Attributes

QmitkStringPropertyOnDemandEdit Class Reference
[Widgets]

#include <QmitkStringPropertyOnDemandEdit.h>

Inheritance diagram for QmitkStringPropertyOnDemandEdit:
Inheritance graph
[legend]
Collaboration diagram for QmitkStringPropertyOnDemandEdit:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 QmitkStringPropertyOnDemandEdit (mitk::StringProperty *, QWidget *parent)
virtual ~QmitkStringPropertyOnDemandEdit ()

Protected Slots

void onToolButtonClicked ()

Protected Member Functions

virtual void PropertyChanged ()
virtual void PropertyRemoved ()

Protected Attributes

mitk::StringPropertym_StringProperty
QHBoxLayout * m_layout
QLabel * m_label
QClickableLabel2m_toolbutton

Detailed Description

Definition at line 48 of file QmitkStringPropertyOnDemandEdit.h.


Constructor & Destructor Documentation

QmitkStringPropertyOnDemandEdit::QmitkStringPropertyOnDemandEdit ( mitk::StringProperty property,
QWidget *  parent 
)

Definition at line 20 of file QmitkStringPropertyOnDemandEdit.cpp.

References m_label, m_layout, m_toolbutton, onToolButtonClicked(), and PropertyChanged().

: QFrame( parent ),
  PropertyEditor( property ),
  m_StringProperty(property)
{
  setFrameStyle( QFrame::NoFrame );
  setLineWidth(0);
  
  // create HBoxLayout with two buttons
  m_layout = new QHBoxLayout(this);
  m_layout->setMargin(0);
 
  m_label = new QLabel(this);
  m_layout->addWidget(m_label);
  
  m_toolbutton = new QClickableLabel2(this);
  m_toolbutton->setText("...");
  m_layout->addWidget(m_toolbutton);
  
  m_layout->addStretch(10);

  connect( m_toolbutton, SIGNAL( clicked() ) , this, SLOT(onToolButtonClicked()) );

  ensurePolished();
  adjustSize();

  PropertyChanged();
}
QmitkStringPropertyOnDemandEdit::~QmitkStringPropertyOnDemandEdit (  ) [virtual]

Definition at line 49 of file QmitkStringPropertyOnDemandEdit.cpp.

{
}

Member Function Documentation

void QmitkStringPropertyOnDemandEdit::onToolButtonClicked (  ) [protected, slot]

Definition at line 66 of file QmitkStringPropertyOnDemandEdit.cpp.

References mitk::PropertyObserver::BeginModifyProperty(), mitk::PropertyObserver::EndModifyProperty(), m_label, m_StringProperty, and mitk::StringProperty::SetValue().

Referenced by QmitkStringPropertyOnDemandEdit().

{
  bool ok(false);
  QString newText = QInputDialog::getText(this,
                                          "Change text", 
                                          "You can change the displayed text here", 
                                          QLineEdit::Normal, 
                                          m_label->text(),
                                          &ok);

  if (ok)
  {
    BeginModifyProperty();  // deregister from events
  
    m_StringProperty->SetValue(newText.toStdString());
    m_label->setText(newText);
  
    EndModifyProperty();  // again register for events
  }
}
void QmitkStringPropertyOnDemandEdit::PropertyChanged (  ) [protected, virtual]
void QmitkStringPropertyOnDemandEdit::PropertyRemoved (  ) [protected, virtual]

Implements mitk::PropertyObserver.

Definition at line 59 of file QmitkStringPropertyOnDemandEdit.cpp.

References m_label, mitk::PropertyEditor::m_Property, and m_StringProperty.

{
  m_Property = NULL;
  m_StringProperty = NULL;
  m_label->setText("n/a");
}

Member Data Documentation

Definition at line 66 of file QmitkStringPropertyOnDemandEdit.h.

Referenced by QmitkStringPropertyOnDemandEdit().

Definition at line 68 of file QmitkStringPropertyOnDemandEdit.h.

Referenced by QmitkStringPropertyOnDemandEdit().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines