ctkWidgetsPlugins.h 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. /*=========================================================================
  2. Library: CTK
  3. Copyright (c) Kitware Inc.
  4. Licensed under the Apache License, Version 2.0 (the "License");
  5. you may not use this file except in compliance with the License.
  6. You may obtain a copy of the License at
  7. http://www.apache.org/licenses/LICENSE-2.0.txt
  8. Unless required by applicable law or agreed to in writing, software
  9. distributed under the License is distributed on an "AS IS" BASIS,
  10. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  11. See the License for the specific language governing permissions and
  12. limitations under the License.
  13. =========================================================================*/
  14. #ifndef __ctkWidgetsPlugins_h
  15. #define __ctkWidgetsPlugins_h
  16. // Qt includes
  17. #include <QDesignerCustomWidgetCollectionInterface>
  18. // CTK includes
  19. #include "ctkWidgetsPluginsExport.h"
  20. #include "ctkActionsWidgetPlugin.h"
  21. #include "ctkAxesWidgetPlugin.h"
  22. #include "ctkCheckableComboBoxPlugin.h"
  23. #include "ctkCheckablePushButtonPlugin.h"
  24. #include "ctkCheckBoxPlugin.h"
  25. #include "ctkCollapsibleButtonPlugin.h"
  26. #include "ctkCollapsibleGroupBoxPlugin.h"
  27. #include "ctkColorPickerButtonPlugin.h"
  28. #include "ctkComboBoxPlugin.h"
  29. #include "ctkCoordinatesWidgetPlugin.h"
  30. #include "ctkCrosshairLabelPlugin.h"
  31. #include "ctkDirectoryButtonPlugin.h"
  32. #include "ctkDoubleRangeSliderPlugin.h"
  33. #include "ctkDoubleSliderPlugin.h"
  34. #include "ctkDoubleSpinBoxPlugin.h"
  35. #include "ctkDynamicSpacerPlugin.h"
  36. #include "ctkExpandButtonPlugin.h"
  37. #include "ctkExpandableWidgetPlugin.h"
  38. #include "ctkFittedTextBrowserPlugin.h"
  39. #include "ctkFontButtonPlugin.h"
  40. #include "ctkMaterialPropertyPreviewLabelPlugin.h"
  41. #include "ctkMaterialPropertyWidgetPlugin.h"
  42. #include "ctkMatrixWidgetPlugin.h"
  43. #include "ctkMenuButtonPlugin.h"
  44. #include "ctkModalityWidgetPlugin.h"
  45. #include "ctkPathLineEditPlugin.h"
  46. #include "ctkPathListButtonsWidgetPlugin.h"
  47. #include "ctkPathListWidgetPlugin.h"
  48. #include "ctkPopupWidgetPlugin.h"
  49. #include "ctkPushButtonPlugin.h"
  50. #include "ctkRangeSliderPlugin.h"
  51. #include "ctkRangeWidgetPlugin.h"
  52. #include "ctkSearchBoxPlugin.h"
  53. #include "ctkSettingsPanelPlugin.h"
  54. #include "ctkSettingsDialogPlugin.h"
  55. #include "ctkSliderWidgetPlugin.h"
  56. #include "ctkThumbnailLabelPlugin.h"
  57. #include "ctkTransferFunctionViewPlugin.h"
  58. #include "ctkTreeComboBoxPlugin.h"
  59. #include "ctkWorkflowButtonBoxWidgetPlugin.h"
  60. #include "ctkWorkflowWidgetStepPlugin.h"
  61. /// \class Group the plugins in one library
  62. class CTK_WIDGETS_PLUGINS_EXPORT ctkWidgetsPlugins
  63. : public QObject
  64. , public QDesignerCustomWidgetCollectionInterface
  65. {
  66. Q_OBJECT
  67. Q_INTERFACES(QDesignerCustomWidgetCollectionInterface)
  68. #ifdef HAVE_QT5
  69. Q_PLUGIN_METADATA(IID "org.commontk.Widgets")
  70. #endif
  71. public:
  72. QList<QDesignerCustomWidgetInterface*> customWidgets() const
  73. {
  74. QList<QDesignerCustomWidgetInterface *> plugins;
  75. plugins << new ctkActionsWidgetPlugin
  76. << new ctkAxesWidgetPlugin
  77. << new ctkCheckableComboBoxPlugin
  78. << new ctkCheckablePushButtonPlugin
  79. << new ctkCheckBoxPlugin
  80. << new ctkCollapsibleButtonPlugin
  81. << new ctkCollapsibleGroupBoxPlugin
  82. << new ctkColorPickerButtonPlugin
  83. << new ctkComboBoxPlugin
  84. << new ctkCoordinatesWidgetPlugin
  85. << new ctkCrosshairLabelPlugin
  86. << new ctkDirectoryButtonPlugin
  87. << new ctkDoubleRangeSliderPlugin
  88. << new ctkDoubleSliderPlugin
  89. << new ctkDoubleSpinBoxPlugin
  90. << new ctkDynamicSpacerPlugin
  91. << new ctkExpandButtonPlugin
  92. << new ctkExpandableWidgetPlugin
  93. << new ctkFittedTextBrowserPlugin
  94. << new ctkFontButtonPlugin
  95. << new ctkMaterialPropertyPreviewLabelPlugin
  96. << new ctkMaterialPropertyWidgetPlugin
  97. << new ctkMatrixWidgetPlugin
  98. << new ctkMenuButtonPlugin
  99. << new ctkModalityWidgetPlugin
  100. << new ctkPathLineEditPlugin
  101. << new ctkPathListButtonsWidgetPlugin
  102. << new ctkPathListWidgetPlugin
  103. << new ctkPopupWidgetPlugin
  104. << new ctkPushButtonPlugin
  105. << new ctkRangeSliderPlugin
  106. << new ctkRangeWidgetPlugin
  107. << new ctkSearchBoxPlugin
  108. << new ctkSettingsPanelPlugin
  109. << new ctkSettingsDialogPlugin
  110. << new ctkSliderWidgetPlugin
  111. << new ctkThumbnailLabelPlugin
  112. << new ctkTransferFunctionViewPlugin
  113. << new ctkTreeComboBoxPlugin
  114. << new ctkWorkflowButtonBoxWidgetPlugin
  115. << new ctkWorkflowWidgetStepPlugin;
  116. return plugins;
  117. }
  118. };
  119. #endif