projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
MarginWidget: Removed unused geometry_updated signal
[pulseview.git]
/
pv
/
view
/
selectableitem.h
diff --git
a/pv/view/selectableitem.h
b/pv/view/selectableitem.h
index 323c87e18743ff894255137af83cbc86c6fce5c3..d815bc7007507a2bbdb2d58fc675221cd5918cb0 100644
(file)
--- a/
pv/view/selectableitem.h
+++ b/
pv/view/selectableitem.h
@@
-30,6
+30,11
@@
class QMenu;
class QWidget;
namespace pv {
class QWidget;
namespace pv {
+
+namespace widgets {
+class Popup;
+}
+
namespace view {
class SelectableItem : public QObject
namespace view {
class SelectableItem : public QObject
@@
-44,7
+49,7
@@
public:
public:
/**
public:
/**
- * Returns true if the
signal
has been selected by the user.
+ * Returns true if the
item
has been selected by the user.
*/
bool selected() const;
*/
bool selected() const;
@@
-53,13
+58,38
@@
public:
*/
void select(bool select = true);
*/
void select(bool select = true);
-public:
- virtual void init_context_bar_actions(QWidget *parent) = 0;
+ /**
+ * Returns true if the item is being dragged.
+ */
+ bool dragging() const;
- virtual const std::list<QAction*> get_context_bar_actions() = 0;
+ /**
+ * Retunrns the current drag point.
+ */
+ QPoint drag_point() const;
+
+ /**
+ * Sets this item into the dragged state.
+ */
+ void drag();
+ /**
+ * Sets this item into the un-dragged state.
+ */
+ void drag_release();
+
+ /**
+ * Get the drag point.
+ */
+ virtual QPoint point() const = 0;
+
+public:
virtual QMenu* create_context_menu(QWidget *parent);
virtual QMenu* create_context_menu(QWidget *parent);
+ virtual pv::widgets::Popup* create_popup(QWidget *parent) = 0;
+
+ virtual void delete_pressed();
+
protected:
static QPen highlight_pen();
protected:
static QPen highlight_pen();
@@
-68,6
+98,7
@@
protected:
private:
bool _selected;
private:
bool _selected;
+ QPoint _drag_point;
};
} // namespace view
};
} // namespace view