OpenMS
Loading...
Searching...
No Matches
Annotations1DContainer.h
Go to the documentation of this file.
1// Copyright (c) 2002-present, OpenMS Inc. -- EKU Tuebingen, ETH Zurich, and FU Berlin
2// SPDX-License-Identifier: BSD-3-Clause
3//
4// --------------------------------------------------------------------------
5// $Maintainer: Johannes Veit $
6// $Authors: Johannes Junker $
7// --------------------------------------------------------------------------
8
9#pragma once
10
12
13#include <list>
14#include <vector>
15
16#include <QtGui/QPen>
17
18class QPoint;
19class QObject;
20class QRectF;
21class QPainter;
22
23namespace OpenMS
24{
25 class Annotation1DItem;
26
29 public std::list<Annotation1DItem *>
30 {
31public:
34
37
40
45
48
51
52 using Base = std::list<Annotation1DItem *>;
53
55 using Iterator = Base::iterator;
56
58 using ConstIterator = std::list<Annotation1DItem *>::const_iterator;
59
62
64 using CoordinateType = double;
65
71 Annotation1DItem * getItemAt(const QPoint & pos) const;
72
74 void selectItemAt(const QPoint & pos) const;
75
77 void deselectItemAt(const QPoint & pos) const;
78
80 void selectAll();
81
84
87
89 void removeItems(const std::vector<Annotation1DItem*>& items);
90
92 std::vector<Annotation1DItem*> getSelectedItems();
93
95 void setPen(const QPen & pen);
96
98 const QPen & getPen() const;
99
101 void setSelectedPen(const QPen & pen);
102
104 const QPen & getSelectedPen() const;
105
106 protected:
108 void deleteAllItems_() const;
109
111 QPen pen_;
112
115 };
116
117} // namespace
118
An abstract class acting as an interface for the different 1D annotation items.
Definition Annotation1DItem.h:36
Container for annotations to content of Plot1DCanvas.
Definition Annotations1DContainer.h:30
double CoordinateType
Coordinate type.
Definition Annotations1DContainer.h:64
void deselectAll()
Deselects all items.
void removeItems(const std::vector< Annotation1DItem * > &items)
Removes and deletes the given items. Items not present in this container are silently ignored.
std::vector< Annotation1DItem * > getSelectedItems()
Returns the selected items.
void deselectItemAt(const QPoint &pos) const
Deselects the item at pos on the canvas, if it exists.
void deleteAllItems_() const
call delete on all pointers in the container, without modifying the container
void setPen(const QPen &pen)
Sets the pen_.
Annotations1DContainer(const Annotations1DContainer &rhs)
Copy constructor.
void selectItemAt(const QPoint &pos) const
Selects the item at pos on the canvas, if it exists.
Annotations1DContainer(Annotations1DContainer &&rhs) noexcept
std::list< Annotation1DItem * >::const_iterator ConstIterator
Const iterator for the 1D annotations.
Definition Annotations1DContainer.h:58
QPen pen_
The pen used to draw items.
Definition Annotations1DContainer.h:111
const QPen & getPen() const
Returns the pen_.
Annotation1DItem * getItemAt(const QPoint &pos) const
Returns a pointer to the item at pos, or 0, if not existent.
QPen selected_pen_
The pen used to draw selected items.
Definition Annotations1DContainer.h:114
Annotations1DContainer & operator=(const Annotations1DContainer &rhs)
Assignment operator.
void setSelectedPen(const QPen &pen)
Sets the selected_pen_.
void removeSelectedItems()
Removes the selected items.
Annotations1DContainer & operator=(Annotations1DContainer &&rhs) noexcept
Move assignment operator. Steals the items from rhs (no cloning).
void selectAll()
Selects all items.
Annotations1DContainer()
Default constructor.
virtual ~Annotations1DContainer()
Destructor.
std::list< Annotation1DItem * > Base
Definition Annotations1DContainer.h:52
const QPen & getSelectedPen() const
Returns the selected_pen_.
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19