PROJECT(pqComponents)

# Any build configured headers should be added to this
# variable so that they also get installed.
SET (dynamicHeaders)

IF(PARAVIEW_ENABLE_PYTHON)
  FIND_PACKAGE(PythonLibs)

  SET(PYTHON_LINK_LIBRARIES
    vtkPVPythonInterpretor
    QtPython
    vtkPVServerCommonPythonD
    vtkPVServerManagerPythonD
    ${PYTHON_LIBRARIES})

  INCLUDE_DIRECTORIES(
    ${VTKPythonWrapping_SOURCE_DIR}/Executable)
ENDIF(PARAVIEW_ENABLE_PYTHON)

INCLUDE(${QT_USE_FILE})

INCLUDE_DIRECTORIES(
  ${QtPython_BINARY_DIR}
  ${QtPython_SOURCE_DIR}
  ${pqComponents_BINARY_DIR}
  ${pqComponents_SOURCE_DIR}
  ${pqCore_BINARY_DIR}
  ${pqCore_SOURCE_DIR}
  ${VTK_INCLUDE_DIR}
  ${PARAVIEW_INCLUDE_DIRS}
  ${QtTesting_SOURCE_DIR}
  ${QtTesting_BINARY_DIR}
  ${QtWidgets_SOURCE_DIR}
  ${QtWidgets_BINARY_DIR}
)

SET(MOC_INCLUDE_DIRS ${MOC_INCLUDE_DIRS} ${QT_INCLUDE_DIR})

# Reduce the number of dirs that get included on moc command line
# since it causes issues on Windows 2000.
GET_DIRECTORY_PROPERTY(include_dirs_tmp INCLUDE_DIRECTORIES)
SET_DIRECTORY_PROPERTIES(PROPERTIES INCLUDE_DIRECTORIES "${MOC_INCLUDE_DIRS}")

QT4_WRAP_CPP(MOC_BUILT_SOURCES
  pq3DWidget.h
  pqAboutDialog.h
  pqActiveRenderViewOptions.h
  pqActiveObjects.h
  pqActiveServer.h
  pqActiveTwoDRenderViewOptions.h
  pqActiveView.h
  pqActiveViewOptions.h
  pqActiveViewOptionsManager.h
  pqActiveXYChartOptions.h
  #pqAddSourceDialog.h
  pqAnimatablePropertiesComboBox.h
  pqAnimatableProxyComboBox.h
  pqAnimationManager.h
  pqAnimationViewWidget.h
  pqApplicationOptions.h
  pqApplicationOptionsDialog.h
  pqAutoGeneratedObjectPanel.h
  pqBoxWidget.h
  pqCalculatorPanel.h
  pqCameraDialog.h
  pqCameraKeyFrameWidget.h
  pqChangeInputDialog.h
  pqClipPanel.h
  pqColorMapModel.h
  pqColorPresetManager.h
  pqColorPresetModel.h
  pqColorScaleEditor.h
  pqColorScaleToolbar.h
  pqComboBoxDomain.h
  pqComparativeCueWidget.h
  pqComparativeVisPanel.h
  pqContourPanel.h
  pqContourWidget.h
  pqCreateServerStartupDialog.h
  pqCubeAxesEditorDialog.h
  pqCurrentTimeToolbar.h
  pqCustomFilterDefinitionWizard.h
  pqCustomFilterManager.h
  pqCustomFilterManagerModel.h
  pqCustomViewButtonDialog.h
  pqCutPanel.h
  pqDataInformationModel.h
  pqDataInformationModelSelectionAdaptor.h
  pqDataInformationWidget.h
  pqDialog.h
  pqDisplayArrayWidget.h
  pqDisplayColorWidget.h
  pqDisplayPanel.h
  pqDisplayProxyEditor.h
  pqDisplayProxyEditorWidget.h
  pqDisplayRepresentationWidget.h
  pqDistanceWidget.h
  pqEditServerStartupDialog.h
  pqExodusIIPanel.h
  pqExtractCTHPartsPanel.h
  pqFileChooserWidget.h
  pqFieldSelectionAdaptor.h
  pqFixStateFilenamesDialog.h
  pqGlobalRenderViewOptions.h
  pqGlyphPanel.h
  pqHandleWidget.h
  pqImageTip.h
  pqImplicitPlaneWidget.h
  pqIsoVolumePanel.h
  pqKeyFrameEditor.h
  pqKeyFrameTimeValidator.h
  pqKeyFrameTypeWidget.h
  pqLineSourceWidget.h
  pqLineWidget.h
  pqLinksEditor.h
  pqLinksManager.h
  pqLoadedFormObjectPanel.h
  pqLockViewSizeCustomDialog.h
  pqMultiView.h
  pqMultiViewFrame.h
  pqNamedObjectPanel.h
  pqNetCDFPanel.h
  pqObjectInspectorWidget.h
  pqObjectPanel.h
  pqOptionsContainer.h
  pqOptionsDialog.h
  pqOptionsPage.h
  pqOrbitCreatorDialog.h
  pqOrbitWidget.h
  pqOutputPortComboBox.h
#  pqParticleTracerPanel.h
  pqParallelCoordinatesChartDisplayPanel.h
  pqPluginTreeWidget.h
  pqPluginTreeWidgetEventPlayer.h
  pqPluginTreeWidgetEventTranslator.h
  pqPQLookupTableManager.h
  pqPipelineBrowserWidget.h
  pqPipelineModel.h
  pqPipelineModelSelectionAdaptor.h
  pqPipelineTimeKeyFrameEditor.h
  pqPluginDialog.h
  pqPointSourceWidget.h
  pqProxyInformationWidget.h
  pqProxyPanel.h
  pqProxySelectionWidget.h
  pqProxyTabWidget.h
  pqQueryClauseWidget.h
  pqQueryDialog.h
  pqRecentFilesMenu.h
  pqRenderViewOptions.h
  pqRescaleRange.h
  pqSMSignalAdaptors.h
  pqSampleScalarAddRangeDialog.h
  pqSampleScalarWidget.h
  pqSaveSnapshotDialog.h
  pqScalarSetModel.h
#  pqScatterPlotDisplayPanel.h
  pqSelectionInspectorPanel.h
  pqSelectReaderDialog.h
  pqSelectThroughPanel.h
  pqSelectionAdaptor.h
  pqSelectionManager.h
  pqServerBrowser.h
  pqServerStartupBrowser.h
  pqServerStartupDialog.h
  pqSignalAdaptorCompositeTreeWidget.h
  pqSignalAdaptorKeyFrameType.h
  pqSignalAdaptorSelectionTreeWidget.h
  pqSignalAdaptorTreeWidget.h
  pqSILModel.h
  pqSILWidget.h
  pqProxySILModel.h
  pqSelectionInputWidget.h
  pqSimpleServerStartup.h
  pqSourceComboBox.h
  pqSphereWidget.h
  pqSplineWidget.h
  pqSpreadSheetDisplayEditor.h
  pqSpreadSheetViewDecorator.h
  pqStandardColorButton.h
  pqStandardColorLinkAdaptor.h
  pqStreamTracerPanel.h
  pqTextDisplayPropertiesWidget.h
  pqTextureComboBox.h
  pqThresholdPanel.h
  pqTimerLogDisplay.h
  pqToolTipTrapper.h
  pqTwoDRenderViewOptions.h
  pqVCRController.h
  pqViewContextMenuHandler.h
  pqViewContextMenuManager.h
  pqViewFrameActionGroup.h
  pqViewManager.h
  pqWidgetRangeDomain.h
  pqWriterDialog.h
  pqXYChartDisplayPanel.h
  pqXYChartOptionsEditor.h
  pqComponentsTestUtility.h
  ${EXTRA_PQ_COMPONENT_MOC_SOURCES}
)

SET_DIRECTORY_PROPERTIES(PROPERTIES INCLUDE_DIRECTORIES "${include_dirs_tmp}")

SET(UI_FORMS
  Resources/UI/pqAbortAnimation.ui
  Resources/UI/pqAboutDialog.ui
  #Resources/UI/pqAddSourceDialog.ui
  Resources/UI/pqAnimationSettings.ui
  Resources/UI/pqApplicationOptions.ui
  Resources/UI/pqBarChartOptionsWidget.ui
  Resources/UI/pqBoxWidget.ui
  Resources/UI/pqCalculatorPanel.ui
  Resources/UI/pqCameraDialog.ui
  Resources/UI/pqCameraKeyFrameWidget.ui
  Resources/UI/pqChartOptionsWidget.ui
  Resources/UI/pqChangeInputDialog.ui
  Resources/UI/pqColorPresetDialog.ui
  Resources/UI/pqColorScaleDialog.ui
  Resources/UI/pqComparativeParameterRangeDialog.ui
  Resources/UI/pqComparativeVisPanel.ui
  Resources/UI/pqContourControls.ui
  Resources/UI/pqContourWidget.ui
  Resources/UI/pqCreateServerStartupDialog.ui
  Resources/UI/pqCustomFilterDefinitionWizard.ui
  Resources/UI/pqCustomFilterManager.ui
  Resources/UI/pqCustomViewButtonDialog.ui
  Resources/UI/pqCubeAxesEditorDialog.ui
  Resources/UI/pqDisplayProxyEditor.ui
  Resources/UI/pqDisplayProxyEditorWidget.ui
  Resources/UI/pqDisplayRepresentationWidget.ui
  Resources/UI/pqEditServerStartupDialog.ui
  Resources/UI/pqEmptyView.ui
  Resources/UI/pqExodusIIPanel.ui
  Resources/UI/pqFixStateFilenamesDialog.ui
  Resources/UI/pqGlobalRenderViewOptions.ui
  Resources/UI/pqHandleWidget.ui
  Resources/UI/pqImplicitPlaneWidget.ui
  Resources/UI/pqIsoVolumePanel.ui
  Resources/UI/pqKeyFrameEditor.ui
  Resources/UI/pqKeyFrameTypeWidget.ui
  Resources/UI/pqLineSourceControls.ui
  Resources/UI/pqLineWidget.ui
  Resources/UI/pqLineSourceControls.ui
  Resources/UI/pqLinksEditor.ui
  Resources/UI/pqLinksManager.ui
  Resources/UI/pqLockViewSizeCustomDialog.ui
  Resources/UI/pqMultiViewFrameMenu.ui
  Resources/UI/pqOptionsDialog.ui
  Resources/UI/pqOrbitCreatorDialog.ui
  Resources/UI/pqParallelCoordinatesChartDisplayPanel.ui
#  Resources/UI/pqParticleTracerPanel.ui
  Resources/UI/pqPipelineTimeKeyFrameEditor.ui
  Resources/UI/pqPluginDialog.ui
  Resources/UI/pqPointSourceControls.ui
  Resources/UI/pqProxyInformationWidget.ui
  Resources/UI/pqQueryClauseWidget.ui
  Resources/UI/pqQueryCompositeTreeDialog.ui
  Resources/UI/pqQueryDialog.ui
  Resources/UI/pqRescaleRangeDialog.ui
  Resources/UI/pqRenderViewOptions.ui
  Resources/UI/pqSampleScalarAddRangeDialog.ui
  Resources/UI/pqSampleScalarWidget.ui
  Resources/UI/pqSaveSnapshotDialog.ui
#  Resources/UI/pqScatterPlotDisplayPanel.ui
  Resources/UI/pqSelectionInputWidget.ui
  Resources/UI/pqSelectionInspectorPanel.ui
  Resources/UI/pqSelectReaderDialog.ui
  Resources/UI/pqServerBrowser.ui
  Resources/UI/pqServerStartupDialog.ui
  Resources/UI/pqSphereWidget.ui
  Resources/UI/pqSplineWidget.ui
  Resources/UI/pqSpreadSheetDisplayEditor.ui
  Resources/UI/pqSpreadSheetViewDecorator.ui
  Resources/UI/pqStreamTracerPanel.ui
  Resources/UI/pqTextDisplayPropertiesWidget.ui
  Resources/UI/pqThresholdPanel.ui
  Resources/UI/pqTimerLogDisplay.ui
  Resources/UI/pqTwoDRenderViewOptions.ui
  Resources/UI/pqWriterDialog.ui
  Resources/UI/pqXYChartDisplayPanel.ui
)

QT4_WRAP_UI(UI_BUILT_SOURCES
  ${UI_FORMS}
)

SET(STANDARD_GUI_RESOURCES
  ${CMAKE_CURRENT_SOURCE_DIR}/Resources/XML/Placeholder.xml
 )

SET(ALL_GUI_RESOURCES
  ${STANDARD_GUI_RESOURCES}
  ${PARAVIEW_EXTRA_GUI_RESOURCES}
  )

GENERATE_QT_RESOURCE_FROM_FILES(
  "${CMAKE_CURRENT_BINARY_DIR}/pqExtraResources.qrc"
  "/ParaViewResources"
  ${ALL_GUI_RESOURCES})

SET(UI_RESOURCES
  Resources/pqComponents.qrc
  "${CMAKE_CURRENT_BINARY_DIR}/pqExtraResources.qrc"
)

QT4_ADD_RESOURCES(RCS_SOURCES
  ${UI_RESOURCES}
)


SOURCE_GROUP("Resources" FILES
  ${UI_RESOURCES}
  ${UI_FORMS}
)

SOURCE_GROUP("Generated" FILES
  ${MOC_BUILT_SOURCES}
  ${RCS_SOURCES}
  ${UI_BUILT_SOURCES}
)

VTK_ADD_LIBRARY(pqComponents
  pq3DWidget.cxx
  pq3DWidget.h
  pqAboutDialog.cxx
  pqAboutDialog.h
  pqActionGroupInterface.cxx
  pqActionGroupInterface.h
  pqActiveRenderViewOptions.cxx
  pqActiveRenderViewOptions.h
  pqActiveObjects.cxx
  pqActiveObjects.h
  pqActiveServer.cxx
  pqActiveServer.h
  pqActiveTwoDRenderViewOptions.cxx
  pqActiveTwoDRenderViewOptions.h
  pqActiveView.cxx
  pqActiveView.h
  pqActiveViewOptions.cxx
  pqActiveViewOptions.h
  pqActiveViewOptionsManager.cxx
  pqActiveViewOptionsManager.h
  pqActiveXYChartOptions.cxx
  pqActiveXYChartOptions.h
  #pqAddSourceDialog.cxx
  #pqAddSourceDialog.h
  pqAnimatablePropertiesComboBox.cxx
  pqAnimatablePropertiesComboBox.h
  pqAnimatableProxyComboBox.cxx
  pqAnimatableProxyComboBox.h
  pqAnimationManager.cxx
  pqAnimationManager.h
  pqAnimationViewWidget.cxx
  pqAnimationViewWidget.h
  pqApplicationOptions.cxx
  pqApplicationOptions.h
  pqApplicationOptionsDialog.cxx
  pqApplicationOptionsDialog.h
  pqAutoGeneratedObjectPanel.cxx
  pqAutoGeneratedObjectPanel.h
  pqBoxWidget.cxx
  pqBoxWidget.h
  pqCalculatorPanel.cxx
  pqCalculatorPanel.h
  pqCameraDialog.cxx
  pqCameraDialog.h
  pqCameraKeyFrameWidget.cxx
  pqCameraKeyFrameWidget.h
  pqChangeInputDialog.cxx
  pqChangeInputDialog.h
  pqChartPixelScale.cxx
  pqChartPixelScale.h
  pqChartValue.cxx
  pqChartValue.h
  pqClipPanel.cxx
  pqClipPanel.h
  pqCloseViewUndoElement.cxx
  pqCloseViewUndoElement.h
  pqColorMapModel.cxx
  pqColorMapModel.h
  pqColorPresetManager.cxx
  pqColorPresetManager.h
  pqColorPresetModel.cxx
  pqColorPresetModel.h
  pqColorScaleEditor.cxx
  pqColorScaleEditor.h
  pqColorScaleToolbar.cxx
  pqColorScaleToolbar.h
  pqComboBoxDomain.cxx
  pqComboBoxDomain.h
  pqComparativeCueWidget.cxx
  pqComparativeCueWidget.h
  pqComparativeVisPanel.cxx
  pqComparativeVisPanel.h
  pqComponentsExport.h
  pqComponentsTestUtility.cxx
  pqComponentsTestUtility.h
  pqComponentsInit.cxx
  pqComponentsInit.h
  pqContourPanel.cxx
  pqContourPanel.h
  pqContourWidget.cxx
  pqContourWidget.h
  pqCreateServerStartupDialog.cxx
  pqCreateServerStartupDialog.h
  pqCubeAxesEditorDialog.cxx
  pqCubeAxesEditorDialog.h
  pqCurrentTimeToolbar.cxx
  pqCurrentTimeToolbar.h
  pqCustomFilterDefinitionModel.cxx
  pqCustomFilterDefinitionModel.h
  pqCustomFilterDefinitionWizard.cxx
  pqCustomFilterDefinitionWizard.h
  pqCustomFilterManager.cxx
  pqCustomFilterManager.h
  pqCustomFilterManagerModel.cxx
  pqCustomFilterManagerModel.h
  pqCustomViewButtonDialog.h
  pqCustomViewButtonDialog.cxx
  pqCutPanel.cxx
  pqCutPanel.h
  pqDataInformationModel.cxx
  pqDataInformationModel.h
  pqDataInformationModelSelectionAdaptor.cxx
  pqDataInformationModelSelectionAdaptor.h
  pqDataInformationWidget.cxx
  pqDataInformationWidget.h
  pqDialog.cxx
  pqDialog.h
  pqDisplayArrayWidget.cxx
  pqDisplayArrayWidget.h
  pqDisplayColorWidget.cxx
  pqDisplayColorWidget.h
  pqDisplayPanel.cxx
  pqDisplayPanel.h
  pqDisplayProxyEditor.cxx
  pqDisplayProxyEditor.h
  pqDisplayProxyEditorWidget.h
  pqDisplayProxyEditorWidget.cxx
  pqDisplayRepresentationWidget.cxx
  pqDisplayRepresentationWidget.h
  pqDistanceWidget.cxx
  pqDistanceWidget.h
  pqEditServerStartupDialog.cxx
  pqEditServerStartupDialog.h
  pqExodusIIPanel.cxx
  pqExodusIIPanel.h
  pqExtractCTHPartsPanel.cxx
  pqExtractCTHPartsPanel.h
  pqFileChooserWidget.cxx
  pqFileChooserWidget.h
  pqFieldSelectionAdaptor.cxx
  pqFieldSelectionAdaptor.h
  pqFixStateFilenamesDialog.cxx
  pqFixStateFilenamesDialog.h
  pqGlobalRenderViewOptions.cxx
  pqGlobalRenderViewOptions.h
  pqGlyphPanel.cxx
  pqGlyphPanel.h
  pqHandleWidget.cxx
  pqHandleWidget.h
  pqImageTip.cxx
  pqImageTip.h
  pqImplicitPlaneWidget.cxx
  pqImplicitPlaneWidget.h
  pqIsoVolumePanel.h
  pqIsoVolumePanel.cxx
  pqKeyFrameEditor.cxx
  pqKeyFrameEditor.h
  pqKeyFrameTimeValidator.cxx
  pqKeyFrameTimeValidator.h
  pqKeyFrameTypeWidget.cxx
  pqKeyFrameTypeWidget.h
  pqLineSourceWidget.cxx
  pqLineSourceWidget.h
  pqLineWidget.cxx
  pqLineWidget.h
  pqLinksEditor.cxx
  pqLinksEditor.h
  pqLinksManager.cxx
  pqLinksManager.h
  pqLoadedFormObjectPanel.cxx
  pqLoadedFormObjectPanel.h
  pqLockViewSizeCustomDialog.cxx
  pqLockViewSizeCustomDialog.h
  pqMultiView.cxx
  pqMultiView.h
  pqMultiViewFrame.cxx
  pqMultiViewFrame.h
  pqNamedObjectPanel.cxx
  pqNamedObjectPanel.h
  pqNamedWidgets.cxx
  pqNamedWidgets.h
  pqNetCDFPanel.cxx
  pqNetCDFPanel.h
  pqObjectInspectorWidget.cxx
  pqObjectInspectorWidget.h
  pqObjectPanel.cxx
  pqObjectPanel.h
  pqOptionsContainer.cxx
  pqOptionsContainer.h
  pqOptionsDialog.cxx
  pqOptionsDialog.h
  pqOptionsPage.cxx
  pqOptionsPage.h
  pqOrbitCreatorDialog.cxx
  pqOrbitCreatorDialog.h
  pqOrbitWidget.cxx
  pqOrbitWidget.h
  pqOutputPortComboBox.cxx
  pqOutputPortComboBox.h
  pqPQLookupTableManager.cxx
  pqPQLookupTableManager.h
  pqParallelCoordinatesChartDisplayPanel.cxx
  pqParallelCoordinatesChartDisplayPanel.h
#  pqParticleTracerPanel.cxx
#  pqParticleTracerPanel.h
  pqPipelineBrowserWidget.cxx
  pqPipelineBrowserWidget.h
  pqPipelineModel.cxx
  pqPipelineModel.h
  pqPipelineModelSelectionAdaptor.cxx
  pqPipelineModelSelectionAdaptor.h
  pqPipelineTimeKeyFrameEditor.cxx
  pqPipelineTimeKeyFrameEditor.h
  pqPluginDialog.cxx
  pqPluginDialog.h
  pqPluginTreeWidget.h
  pqPluginTreeWidgetEventPlayer.cxx
  pqPluginTreeWidgetEventPlayer.h
  pqPluginTreeWidgetEventTranslator.cxx
  pqPluginTreeWidgetEventTranslator.h
  pqPointSourceWidget.cxx
  pqPointSourceWidget.h
  pqProxyInformationWidget.cxx
  pqProxyInformationWidget.h
  pqProxyPanel.cxx
  pqProxyPanel.h
  pqProxySelectionWidget.cxx
  pqProxySelectionWidget.h
  pqProxyTabWidget.cxx
  pqProxyTabWidget.h
  pqQueryClauseWidget.cxx
  pqQueryClauseWidget.h
  pqQueryDialog.cxx
  pqQueryDialog.h
  pqRecentFilesMenu.cxx
  pqRecentFilesMenu.h
  pqRescaleRange.cxx
  pqRescaleRange.h
  pqRenderViewOptions.cxx
  pqRenderViewOptions.h
  pqSMSignalAdaptors.cxx
  pqSMSignalAdaptors.h
  pqSampleScalarAddRangeDialog.cxx
  pqSampleScalarAddRangeDialog.h
  pqSampleScalarWidget.cxx
  pqSampleScalarWidget.h
  pqSaveSnapshotDialog.cxx
  pqSaveSnapshotDialog.h
  pqScalarSetModel.cxx
  pqScalarSetModel.h
#  pqScatterPlotDisplayPanel.cxx
#  pqScatterPlotDisplayPanel.h
  pqSelectionInspectorPanel.cxx
  pqSelectionInspectorPanel.h
  pqSelectReaderDialog.cxx
  pqSelectReaderDialog.h
  pqSelectThroughPanel.cxx
  pqSelectThroughPanel.h
  pqSelectionAdaptor.cxx
  pqSelectionAdaptor.h
  pqSelectionInputWidget.cxx
  pqSelectionInputWidget.h
  pqSelectionManager.cxx
  pqSelectionManager.h
  pqServerBrowser.cxx
  pqServerBrowser.h
  pqServerStartupBrowser.cxx
  pqServerStartupBrowser.h
  pqServerStartupDialog.cxx
  pqServerStartupDialog.h
  pqSignalAdaptorCompositeTreeWidget.cxx
  pqSignalAdaptorCompositeTreeWidget.h
  pqSignalAdaptorKeyFrameType.cxx
  pqSignalAdaptorKeyFrameType.h
  pqSignalAdaptorSelectionTreeWidget.cxx
  pqSignalAdaptorSelectionTreeWidget.h
  pqSignalAdaptorTreeWidget.cxx
  pqSignalAdaptorTreeWidget.h
  pqSILModel.cxx
  pqSILModel.h
  pqSILWidget.cxx
  pqSILWidget.h
  pqProxySILModel.cxx
  pqProxySILModel.h
  pqSimpleServerStartup.cxx
  pqSimpleServerStartup.h
  pqSourceComboBox.cxx
  pqSourceComboBox.h
  pqSphereWidget.cxx
  pqSphereWidget.h
  pqSplineWidget.cxx
  pqSplineWidget.h
  pqSplitViewUndoElement.cxx
  pqSplitViewUndoElement.h
  pqSpreadSheetDisplayEditor.cxx
  pqSpreadSheetDisplayEditor.h
  pqSpreadSheetViewDecorator.cxx
  pqSpreadSheetViewDecorator.h
  pqStandardColorButton.cxx
  pqStandardColorButton.h
  pqStandardColorLinkAdaptor.cxx
  pqStandardColorLinkAdaptor.h
  pqStreamTracerPanel.cxx
  pqStreamTracerPanel.h
  pqTextDisplayPropertiesWidget.cxx
  pqTextDisplayPropertiesWidget.h
  pqTextureComboBox.cxx
  pqTextureComboBox.h
  pqThresholdPanel.cxx
  pqThresholdPanel.h
  pqTimerLogDisplay.cxx
  pqTimerLogDisplay.h
  pqToolTipTrapper.cxx
  pqToolTipTrapper.h
  pqTwoDRenderViewOptions.cxx
  pqTwoDRenderViewOptions.h
  pqUndoStackBuilder.cxx
  pqUndoStackBuilder.h
  pqVariableType.h
  pqVCRController.cxx
  pqVCRController.h
  pqViewContextMenuHandler.cxx
  pqViewContextMenuHandler.h
  pqViewContextMenuManager.cxx
  pqViewContextMenuManager.h
  pqViewManager.cxx
  pqViewManager.h
  pqWidgetRangeDomain.cxx
  pqWidgetRangeDomain.h
  pqWriterDialog.cxx
  pqWriterDialog.h
  pqXYChartDisplayPanel.cxx
  pqXYChartDisplayPanel.h
  pqXYChartOptionsEditor.cxx
  pqXYChartOptionsEditor.h
  ${EXTRA_PQ_COMPONENT_SOURCES}
  ${MOC_BUILT_SOURCES}
  ${RCS_SOURCES}
  ${UI_BUILT_SOURCES}
)

TARGET_LINK_LIBRARIES(pqComponents
  pqCore
  ${PYTHON_LINK_LIBRARIES}
  ${QT_QTNETWORK_LIBRARY}
)

CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/pqComponentsExport.h.in"
               "${CMAKE_CURRENT_BINARY_DIR}/pqComponentsExport.h")
SET(dynamicHeaders
    "${dynamicHeaders};${CMAKE_CURRENT_BINARY_DIR}/pqComponentsExport.h")

IF(NOT PV_INSTALL_NO_LIBRARIES)
  INSTALL(TARGETS pqComponents
    EXPORT ${PV_INSTALL_EXPORT_NAME}
    RUNTIME DESTINATION ${PV_INSTALL_BIN_DIR} COMPONENT Runtime
    LIBRARY DESTINATION ${PV_INSTALL_LIB_DIR} COMPONENT Runtime
    ARCHIVE DESTINATION ${PV_INSTALL_LIB_DIR} COMPONENT Development)
ENDIF()

IF (NOT PV_INSTALL_NO_DEVELOPMENT)
  # Headers
  GLOB_INSTALL_DEVELOPMENT(
      ${CMAKE_CURRENT_SOURCE_DIR}
      ${PV_INSTALL_INCLUDE_DIR}
      "*.h;*.hxx;*.txx")
  INSTALL(
      FILES ${dynamicHeaders}
      DESTINATION ${PV_INSTALL_INCLUDE_DIR}
      COMPONENT Development)
  # QT resources
  SET(resPath "${CMAKE_CURRENT_SOURCE_DIR}/Resources/XML")
  GLOB_INSTALL_DEVELOPMENT(
    "${CMAKE_CURRENT_SOURCE_DIR}"
    "${PV_INSTALL_INCLUDE_DIR}/Qt/Components/Resources/XML"
    "${resPath}/*.xml")
  SET(resPath "${CMAKE_CURRENT_SOURCE_DIR}/Resources/UI")
  GLOB_INSTALL_DEVELOPMENT(
    "${CMAKE_CURRENT_SOURCE_DIR}"
    "${PV_INSTALL_INCLUDE_DIR}/Qt/Components/Resources/UI"
    "${resPath}/*.ui")
  SET(resPath "${CMAKE_CURRENT_SOURCE_DIR}/Resources/Icons")
  GLOB_INSTALL_DEVELOPMENT(
    "${CMAKE_CURRENT_SOURCE_DIR}"
    "${PV_INSTALL_INCLUDE_DIR}/Qt/Components/Resources/Icons"
    "${resPath}/*.ico;${resPath}/*.png;${resPath}/*.svg;${resPath}/*.xpm;${resPath}/*.rc")
ENDIF (NOT PV_INSTALL_NO_DEVELOPMENT)
