-// Copyright (C) 2010-2014 CEA/DEN, EDF R&D
+// Copyright (C) 2014-2020 CEA/DEN, EDF R&D, OPEN CASCADE
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
//
// Author: Adrien Bruneton (CEA)
-#ifndef PVVIEWERGUIELEMENTS_H_
-#define PVVIEWERGUIELEMENTS_H_
+#ifndef PVVIEWER_GUIELEMENTS_H
+#define PVVIEWER_GUIELEMENTS_H
#include "PVViewer.h"
#include <QObject>
#include <QList>
-class pqPropertiesPanel;
-class pqPipelineBrowserWidget;
-class SUIT_Desktop;
+class QAction;
+class QMainWindow;
class QMenu;
class QToolBar;
-class QAction;
class pqAnimationTimeToolbar;
+class pqPipelineBrowserWidget;
+class pqPipelineModel;
+class pqPropertiesPanel;
class pqVCRToolbar;
/*!
Q_OBJECT
public:
- static PVViewer_GUIElements * GetInstance(SUIT_Desktop* desk);
+ static PVViewer_GUIElements* GetInstance(QMainWindow*);
- pqPropertiesPanel * getPropertiesPanel() { return propertiesPanel; }
- pqPipelineBrowserWidget * getPipelineBrowserWidget() { return pipelineBrowserWidget; }
+ pqPropertiesPanel* getPropertiesPanel();
+ pqPipelineBrowserWidget* getPipelineBrowserWidget();
- QMenu* getFiltersMenu() { return filtersMenu; }
- QMenu* getSourcesMenu() { return sourcesMenu; }
- QMenu* getMacrosMenu() { return macrosMenu; }
+ QMenu* getFiltersMenu();
+ QMenu* getSourcesMenu();
+ QMenu* getMacrosMenu();
+ QMenu* getCatalystMenu();
- pqVCRToolbar* getVCRToolbar() { return vcrToolbar; }
- pqAnimationTimeToolbar* getTimeToolbar() { return timeToolbar; }
+ pqVCRToolbar* getVCRToolbar();
+ pqAnimationTimeToolbar* getTimeToolbar();
- void myBuildToolbars(SUIT_Desktop* desk);
- void addToolbars(SUIT_Desktop* desk);
- void setToolBarVisible(bool show);
+ void setToolBarVisible(bool);
+ void setToolBarEnabled(bool);
QList<QToolBar*> getToolbars();
-public slots:
- void onEmulateApply(); // better use the slot from PVViewer_ViewManager if you want to trigger "Apply"
+ void setVCRTimeToolBarVisible(bool);
private:
- PVViewer_GUIElements(SUIT_Desktop* desk);
+ PVViewer_GUIElements(QMainWindow*);
virtual ~PVViewer_GUIElements() {}
static PVViewer_GUIElements* theInstance;
+ void buildPVWidgets();
+
+ void publishExistingSources();
+
// Widgets
pqPropertiesPanel* propertiesPanel;
pqPipelineBrowserWidget* pipelineBrowserWidget;
+ pqPipelineModel* pipelineModel;
// Dummy QMenus receiving ParaView's reaction for automatic add when new sources are added
QMenu* sourcesMenu;
QMenu* filtersMenu;
QMenu* macrosMenu;
+ QMenu* catalystMenu;
// Toolbars also need to be instanciated early:
QToolBar* mainToolBar;
QToolBar* macrosToolbar;
QToolBar* commonToolbar;
QToolBar* dataToolbar;
+
+ QMainWindow* myDesktop;
+ bool myPVWidgetsFlag;
public:
QAction* mainAction;
QAction* dataAction;
};
-#endif /* PVVIEWERGUIELEMENTS_H_ */
+#endif // PVVIEWER_GUIELEMENTS_H