qtInstancedView.h 1.54 KB
Newer Older
1 2 3 4 5 6 7 8 9
//=========================================================================
//  Copyright (c) Kitware, Inc.
//  All rights reserved.
//  See LICENSE.txt for details.
//
//  This software is distributed WITHOUT ANY WARRANTY; without even
//  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
//  PURPOSE.  See the above copyright notice for more information.
//=========================================================================
10
// .NAME qtInstancedView - UI components for attribute Instanced View
11 12 13 14
// .SECTION Description
// .SECTION See Also
// qtSection

Bob Obara's avatar
Bob Obara committed
15 16
#ifndef __smtk_extension_qtInstancedView_h
#define __smtk_extension_qtInstancedView_h
17

18
#include "smtk/extension/qt/Exports.h"
19
#include "smtk/extension/qt/qtBaseView.h"
20

21
class qtInstancedViewInternals;
22 23
class QScrollArea;

24
namespace smtk
25
{
26 27 28 29 30
namespace extension
{
class SMTKQTEXT_EXPORT qtInstancedView : public qtBaseView
{
  Q_OBJECT
31

32 33
public:
  static qtBaseView* createViewWidget(const ViewInfo& info);
34

35 36 37 38
  qtInstancedView(const ViewInfo& info);
  virtual ~qtInstancedView();
  // Returns true if all attributes in the view are valid
  bool isValid() const;
39

40 41
  bool isEmpty() const override;

42
public slots:
43 44
  void showAdvanceLevelOverlay(bool show) override;
  void onShowCategory() override { this->updateAttributeData(); }
45

46 47 48
signals:
  // emitted when an attribute is modified
  void modified();
49

50
protected:
51 52
  void updateAttributeData() override;
  void createWidget() override;
53

54 55
private:
  qtInstancedViewInternals* Internals;
56

57 58
}; // class
}; // namespace attribute
59
}; // namespace smtk
60 61

#endif