gui/broken_edge.h
author klao
Mon, 27 Jun 2005 19:47:09 +0000
changeset 1519 17e367a93cbb
parent 1501 39d59aee2a1a
child 1524 587a823bcdd0
permissions -rw-r--r--
getstart improvements
     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 edge_former_event_handler(GdkEvent*);
    30  public:
    31   BrokenEdge(Gnome::Canvas::Group &, Gnome::Canvas::Points, GraphDisplayerCanvas &);
    32   ~BrokenEdge();
    33   void set_points(Gnome::Canvas::Points, bool move=false);
    34   xy<double> get_arrow_pos();
    35 };
    36 
    37 
    38 #endif //BROKEN_EDGE_H
    39