00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date: 2009-07-07 16:57:15 +0200 (Di, 07 Jul 2009) $ 00006 Version: $Revision: 18019 $ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 #include "QmitkDataManagerPreferencePage.h" 00019 #include "QmitkDataManagerView.h" 00020 00021 #include <QLabel> 00022 #include <QPushButton> 00023 #include <QFormLayout> 00024 #include <QCheckBox> 00025 00026 #include <berryIPreferencesService.h> 00027 #include <berryPlatform.h> 00028 00029 QmitkDataManagerPreferencePage::QmitkDataManagerPreferencePage() 00030 : m_MainControl(0) 00031 { 00032 00033 } 00034 00035 void QmitkDataManagerPreferencePage::Init(berry::IWorkbench::Pointer ) 00036 { 00037 00038 } 00039 00040 void QmitkDataManagerPreferencePage::CreateQtControl(QWidget* parent) 00041 { 00042 berry::IPreferencesService::Pointer prefService 00043 = berry::Platform::GetServiceRegistry() 00044 .GetServiceById<berry::IPreferencesService>(berry::IPreferencesService::ID); 00045 00046 m_DataManagerPreferencesNode = prefService->GetSystemPreferences()->Node(QmitkDataManagerView::VIEW_ID); 00047 00048 m_MainControl = new QWidget(parent); 00049 m_EnableSingleEditing = new QCheckBox; 00050 m_PlaceNewNodesOnTop = new QCheckBox; 00051 00052 QFormLayout *formLayout = new QFormLayout; 00053 formLayout->addRow("&Single click property editing:", m_EnableSingleEditing); 00054 formLayout->addRow("&Place new nodes on top:", m_PlaceNewNodesOnTop); 00055 00056 m_MainControl->setLayout(formLayout); 00057 this->Update(); 00058 } 00059 00060 QWidget* QmitkDataManagerPreferencePage::GetQtControl() const 00061 { 00062 return m_MainControl; 00063 } 00064 00065 bool QmitkDataManagerPreferencePage::PerformOk() 00066 { 00067 m_DataManagerPreferencesNode->PutBool("Single click property editing" 00068 , m_EnableSingleEditing->isChecked()); 00069 m_DataManagerPreferencesNode->PutBool("Place new nodes on top" 00070 , m_PlaceNewNodesOnTop->isChecked()); 00071 return true; 00072 } 00073 00074 void QmitkDataManagerPreferencePage::PerformCancel() 00075 { 00076 00077 } 00078 00079 void QmitkDataManagerPreferencePage::Update() 00080 { 00081 m_EnableSingleEditing->setChecked(m_DataManagerPreferencesNode->GetBool("Single click property editing", true)); 00082 m_PlaceNewNodesOnTop->setChecked(m_DataManagerPreferencesNode->GetBool("Place new nodes on top", true)); 00083 }