ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ecvItemSelectionDlg.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - CloudViewer: www.cloudViewer.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2024 www.cloudViewer.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #pragma once
9 
10 #include <ui_itemSelectionDlg.h>
11 
12 // CV_DB_LIB
13 #include <ecvHObject.h>
14 
16 class ccItemSelectionDlg : public QDialog, public Ui::ItemSelectionDlg {
17  Q_OBJECT
18 
19 public: // static shortcuts
21  static int SelectEntity(const ccHObject::Container& entities,
22  int defaultSelectedIndex = 0,
23  QWidget* parent = 0,
24  QString label = QString());
25 
27  static bool SelectEntities(const ccHObject::Container& entities,
28  std::vector<int>& indexes,
29  QWidget* parent = 0,
30  QString label = QString());
31 
32 public:
34  ccItemSelectionDlg(bool multiSelectionEnabled,
35  QWidget* parent = 0,
36  QString itemName = "entities",
37  QString label = QString());
38 
40  void setItems(const QStringList& items, int defaultSelectedIndex = 0);
41 
43  int getSelectedIndex() const;
44 
46  void getSelectedIndexes(std::vector<int>& indexes) const;
47 };
std::vector< ccHObject * > Container
Standard instances container (for children, etc.)
Definition: ecvHObject.h:337
Dialog to select one or multiple items.
ccItemSelectionDlg(bool multiSelectionEnabled, QWidget *parent=0, QString itemName="entities", QString label=QString())
Default constructor.
void getSelectedIndexes(std::vector< int > &indexes) const
Returns selected indexes (multi-selection mode)
void setItems(const QStringList &items, int defaultSelectedIndex=0)
Sets the list of items.
int getSelectedIndex() const
Returns selected index (unique selection mode)
static int SelectEntity(const ccHObject::Container &entities, int defaultSelectedIndex=0, QWidget *parent=0, QString label=QString())
Static shortcut: unique selection mode.
static bool SelectEntities(const ccHObject::Container &entities, std::vector< int > &indexes, QWidget *parent=0, QString label=QString())
Static shortcut: multi-selection mode.