gui/broken_edge.h
author ladanyi
Fri, 26 Aug 2005 07:35:23 +0000
changeset 1648 dd8672338691
parent 1524 587a823bcdd0
permissions -rw-r--r--
- use Gtk::Dialog to set the new values of edge and node maps
- update all edges/nodes when editing a map so that edge widths and node
sizes change properly
- coordinate maps are no longer selectable in the maps window
     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