|
Slicer 4.2
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
|
00001 /*============================================================================== 00002 00003 Program: 3D Slicer 00004 00005 Copyright (c) Kitware Inc. 00006 00007 See COPYRIGHT.txt 00008 or http://www.slicer.org/copyright/copyright.txt for details. 00009 00010 Unless required by applicable law or agreed to in writing, software 00011 distributed under the License is distributed on an "AS IS" BASIS, 00012 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00013 See the License for the specific language governing permissions and 00014 limitations under the License. 00015 00016 This file was originally developed by Julien Finet, Kitware Inc. 00017 and was partially funded by NIH grant 3P41RR013218-12S1 00018 00019 ==============================================================================*/ 00020 00021 #ifndef __qSlicerModuleSelectorToolBar_h 00022 #define __qSlicerModuleSelectorToolBar_h 00023 00024 // Qt includes 00025 #include <QToolBar> 00026 00027 // CTK includes 00028 #include <ctkPimpl.h> 00029 #include "qSlicerBaseQTGUIExport.h" 00030 00031 class qSlicerModuleSelectorToolBarPrivate; 00032 class qSlicerModuleManager; 00033 class qSlicerModulesMenu; 00034 class qSlicerAbstractCoreModule; 00035 00042 class Q_SLICER_BASE_QTGUI_EXPORT qSlicerModuleSelectorToolBar: public QToolBar 00043 { 00044 Q_OBJECT 00045 public: 00046 typedef QToolBar Superclass; 00047 00051 qSlicerModuleSelectorToolBar(const QString& title, QWidget* parent = 0); 00052 qSlicerModuleSelectorToolBar(QWidget* parent = 0); 00053 virtual ~qSlicerModuleSelectorToolBar(); 00054 00056 qSlicerModulesMenu* modulesMenu()const; 00057 00058 public slots: 00060 void setModuleManager(qSlicerModuleManager* moduleManager); 00061 00063 void selectModule(const QString& moduleName); 00064 00065 void selectNextModule(); 00066 void selectPreviousModule(); 00067 00068 signals: 00072 void moduleSelected(const QString& name); 00073 00074 protected slots: 00075 void moduleRemoved(const QString& moduleName); 00076 00077 void onModuleSelected(const QString& name); 00078 void actionSelected(QAction* action); 00079 00080 protected: 00081 QScopedPointer<qSlicerModuleSelectorToolBarPrivate> d_ptr; 00082 00083 private: 00084 Q_DECLARE_PRIVATE(qSlicerModuleSelectorToolBar); 00085 Q_DISABLE_COPY(qSlicerModuleSelectorToolBar); 00086 }; 00087 00088 #endif
1.7.4