equal
deleted
inserted
replaced
1 // -*- C++ -*- // |
|
2 |
|
3 #ifndef BROKEN_EDGE_H |
|
4 #define BROKEN_EDGE_H |
|
5 |
|
6 class BrokenEdge; |
|
7 |
|
8 #include "all_include.h" |
|
9 #include <libgnomecanvasmm.h> |
|
10 #include <libgnomecanvasmm/polygon.h> |
|
11 #include "graph_displayer_canvas.h" |
|
12 #include <lemon/xy.h> |
|
13 |
|
14 class BrokenEdge : public Gnome::Canvas::Line |
|
15 { |
|
16 GraphDisplayerCanvas & gdc; |
|
17 Gnome::Canvas::Polygon * arrow; |
|
18 Gnome::Art::Point * my_points; |
|
19 |
|
20 |
|
21 ///Indicates whether the button of mouse is pressed or not |
|
22 bool isbutton; |
|
23 |
|
24 ///At this location was the mousebutton pressed. |
|
25 ///It helps to calculate the distance of dragging. |
|
26 double clicked_x, clicked_y; |
|
27 |
|
28 ///event handler for forming edges |
|
29 bool edgeFormerEventHandler(GdkEvent*); |
|
30 public: |
|
31 BrokenEdge(Gnome::Canvas::Group &, Gnome::Canvas::Points, GraphDisplayerCanvas &); |
|
32 ~BrokenEdge(); |
|
33 void setPoints(Gnome::Canvas::Points, bool move=false); |
|
34 xy<double> getArrowPos(); |
|
35 }; |
|
36 |
|
37 |
|
38 #endif //BROKEN_EDGE_H |
|
39 |
|