
#ifndef QMITKUSNAVIGATIONCOMBINEDSETTINGSWIDGET_H
#define QMITKUSNAVIGATIONCOMBINEDSETTINGSWIDGET_H

#include "QmitkUSNavigationAbstractSettingsWidget.h"
#include "mitkDataNode.h"

namespace Ui {
class QmitkUSNavigationCombinedSettingsWidget;
}

/**
 * \brief Settings widget for the USNavigationMarkerPlacement.
 * This widgets allows for configuring the experiment mode and for changing the
 * application between marker placement and punctuation.
 */
class QmitkUSNavigationCombinedSettingsWidget : public QmitkUSNavigationAbstractSettingsWidget
{
  Q_OBJECT

protected slots:
  void OnApplicationChanged(int);

public:
  explicit QmitkUSNavigationCombinedSettingsWidget(QWidget *parent = 0);
  ~QmitkUSNavigationCombinedSettingsWidget();

protected:
  virtual void OnSetSettingsNode(itk::SmartPointer<mitk::DataNode> settingsNode, bool overwriteValues);
  virtual void OnSaveProcessing();
  virtual void OnLoadSettingsProcessing();

  QString InteractionNameToFile(const QString& name) const;

private:
  Ui::QmitkUSNavigationCombinedSettingsWidget *ui;
};

#endif // QMITKUSNAVIGATIONCOMBINEDSETTINGSWIDGET_H
