Isis Developer Reference
ToolList.h
Go to the documentation of this file.
1 #ifndef ToolList_h
2 #define ToolList_h
3 
10 /* SPDX-License-Identifier: CC0-1.0 */
11 
12 #include <QList>
13 
14 #include <QPointer>
15 
16 class QStackedWidget;
17 class QToolBar;
18 
19 namespace Isis {
20  class RubberBandTool;
21  class Tool;
22 
32  class ToolList {
33  public:
34  ToolList();
35  ~ToolList();
36 
37  void append(Tool *tool);
38  int count() const;
40  QStackedWidget *toolBarStack();
41  QStackedWidget *toolBarStack(QToolBar *toolBar);
42 
43  Tool *operator[](int index);
44 
45  private:
46  Q_DISABLE_COPY(ToolList);
47 
48  QList<Tool *> m_tools;
49 
50  QPointer<QStackedWidget> m_activeToolBarStack;
51  QPointer<RubberBandTool> m_rubberBandTool;
52  };
53 }
54 
55 #endif
Isis::ToolList
Allows tools to share data between each other.
Definition: ToolList.h:32
Isis::Tool::setList
void setList(ToolList *currentList)
Definition: Tool.cpp:68
QList
This is free and unencumbered software released into the public domain.
Definition: BoxcarCachingAlgorithm.h:13
Isis::Tool
Base class for the Qisis tools.
Definition: Tool.h:67
Isis::ToolList::append
void append(Tool *tool)
Definition: ToolList.cpp:21
Isis::ToolList::toolBarStack
QStackedWidget * toolBarStack()
Definition: ToolList.cpp:46
Isis::ToolList::~ToolList
~ToolList()
Definition: ToolList.cpp:16
Tool.h
QToolBar
Isis::ToolList::rubberBandTool
RubberBandTool * rubberBandTool()
Definition: ToolList.cpp:41
Isis::ToolList::operator[]
Tool * operator[](int index)
Definition: ToolList.cpp:61
Isis::ToolList::count
int count() const
Definition: ToolList.cpp:36
Isis::RubberBandTool
Rubber banding tool.
Definition: RubberBandTool.h:50
RubberBandTool.h
Isis::ToolList::ToolList
ToolList()
Definition: ToolList.cpp:10
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
ToolList.h