00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date$ 00006 Version: $Revision$ 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 <mitkProperties.h> 00019 #include "QmitkExtExports.h" 00020 00021 class QWidget; 00022 00023 class QmitkExt_EXPORT QmitkPropertyViewFactory 00024 { 00025 public: 00026 00027 enum ViewTypes { vtDEFAULT = 0 }; 00028 enum EditorTypes { etDEFAULT = 0, etALWAYS_EDIT = 1, etON_DEMAND_EDIT = 2 }; 00029 00030 static QmitkPropertyViewFactory* GetInstance(); // singleton 00031 00034 QWidget* CreateView (const mitk::BaseProperty* property, unsigned int type = 0, QWidget* parent = 0); 00035 QWidget* CreateEditor(mitk::BaseProperty* property, unsigned int type = 0, QWidget* parent = 0); 00036 00037 protected: 00038 00039 QmitkPropertyViewFactory(); // hidden, access through GetInstance() 00040 ~QmitkPropertyViewFactory(); 00041 00042 private: 00043 00044 }; 00045