pqTimelineWidget.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-FileCopyrightText: Copyright (c) Sandia Corporation
3 // SPDX-License-Identifier: BSD-3-Clause
4 #ifndef pqTimelineWidget_h
5 #define pqTimelineWidget_h
6 
8 
9 #include <QWidget>
10 
11 #include <memory> // for std::unique_ptr
12 
13 class pqAnimationCue;
14 class pqAnimationScene;
16 class vtkSMProxy;
17 
23 {
24  Q_OBJECT
25 
26  typedef QWidget Superclass;
27 
28 public:
29  pqTimelineWidget(QWidget* parent = nullptr);
30  ~pqTimelineWidget() override;
31 
35  void setAdvancedMode(bool advanced);
36 
37 public Q_SLOTS: // NOLINT(readability-redundant-access-specifiers)
41  void onNewSession();
42 
46  void recreateTimeSources();
47 
51  void updateTimeTrackFromScene();
52 
56  void updateSceneFromEnabledSources();
60  void updateSceneFromEnabledAnimations();
62 
66  void renameTrackFromProxy(pqServerManagerModelItem* item);
70  void updateSourceTimeFromProxy(pqServerManagerModelItem* item);
72  void updateCueCache(const QString& group, const QString& name, vtkSMProxy* proxy);
74 
78  void addCueTrack(pqAnimationCue* cue);
82  void removeCueTrack(pqAnimationCue* cue);
84  void updateCueTracksData();
86  void updateCueTracksState();
88 
89 private:
90  Q_DISABLE_COPY(pqTimelineWidget)
91  struct pqInternals;
92  std::unique_ptr<pqInternals> Internals;
93 };
94 
95 #endif
#define PQAPPLICATIONCOMPONENTS_EXPORT
pqServerManagerModelItem is a element maintained by pqServerManagerModel.
pqAnimationCue is the pqProxy wrapping an animation proxy.
name
proxy for a VTK object(s) on a server
Definition: vtkSMProxy.h:140
pqAnimationScene is a representation for a vtkSMAnimationScene proxy.
pqTimelineWidget holds the timeline views and models for the time sources and the animation tracks...