Responsible for drawing data provided by DisplayProviders. More...
#include <MapDrawingArea.h>
Public Member Functions | |
MapDrawingArea (BaseObjectType *cobject, Glib::RefPtr< Gtk::Builder > const &) | |
Constructs a MapDrawingArea. | |
void | add_dp (int priority, std::shared_ptr< DisplayProvider > dp) |
Adds a DisplayProvider to considered DisplayProviders. | |
void | set_latitude (double lat) |
Sets latitude to look at. | |
void | set_longitude (double lon) |
Sets longitude to look at. | |
int | set_zoom (int zoom) |
Sets zoom level. | |
int | get_zoom () |
virtual | ~MapDrawingArea () |
Data Fields | |
boost::signal< void(int)> | zoom_changed |
This signal gets signalled when zoom level is changed. | |
boost::signal< void(std::vector < std::unique_ptr < osm::Element > > const &elem)> | element_clicked |
This signal gets signalled when element is clicked. | |
Protected Member Functions | |
bool | on_draw (Cairo::RefPtr< Cairo::Context > const &cr) |
bool | on_button_press_event (GdkEventButton *event) |
bool | on_button_release_event (GdkEventButton *event) |
bool | on_motion_notify_event (GdkEventMotion *event) |
bool | on_leave_notify_event (GdkEventCrossing *event) |
bool | on_enter_notify_event (GdkEventCrossing *event) |
bool | on_scroll_event (GdkEventScroll *event) |
void | on_size_allocate (Gtk::Allocation &alloc) |
Responsible for drawing data provided by DisplayProviders.
Definition at line 25 of file MapDrawingArea.h.
display::MapDrawingArea::MapDrawingArea | ( | BaseObjectType * | cobject, |
Glib::RefPtr< Gtk::Builder > const & | |||
) |
display::MapDrawingArea::~MapDrawingArea | ( | ) | [virtual] |
Definition at line 45 of file MapDrawingArea.cpp.
void display::MapDrawingArea::add_dp | ( | int | priority, |
std::shared_ptr< DisplayProvider > | dp | ||
) |
Adds a DisplayProvider to considered DisplayProviders.
Priority determines order. Lower priorities go first and DisplayElements are not drawn over.
priority | |
dp |
Definition at line 34 of file MapDrawingArea.cpp.
int display::MapDrawingArea::get_zoom | ( | ) |
Definition at line 278 of file MapDrawingArea.cpp.
bool display::MapDrawingArea::on_button_press_event | ( | GdkEventButton * | event | ) | [protected] |
Definition at line 57 of file MapDrawingArea.cpp.
bool display::MapDrawingArea::on_button_release_event | ( | GdkEventButton * | event | ) | [protected] |
Definition at line 78 of file MapDrawingArea.cpp.
bool display::MapDrawingArea::on_draw | ( | Cairo::RefPtr< Cairo::Context > const & | cr | ) | [protected] |
Definition at line 49 of file MapDrawingArea.cpp.
bool display::MapDrawingArea::on_enter_notify_event | ( | GdkEventCrossing * | event | ) | [protected] |
Definition at line 107 of file MapDrawingArea.cpp.
bool display::MapDrawingArea::on_leave_notify_event | ( | GdkEventCrossing * | event | ) | [protected] |
Definition at line 102 of file MapDrawingArea.cpp.
bool display::MapDrawingArea::on_motion_notify_event | ( | GdkEventMotion * | event | ) | [protected] |
Definition at line 91 of file MapDrawingArea.cpp.
bool display::MapDrawingArea::on_scroll_event | ( | GdkEventScroll * | event | ) | [protected] |
Definition at line 112 of file MapDrawingArea.cpp.
void display::MapDrawingArea::on_size_allocate | ( | Gtk::Allocation & | alloc | ) | [protected] |
Definition at line 134 of file MapDrawingArea.cpp.
void display::MapDrawingArea::set_latitude | ( | double | lat | ) |
void display::MapDrawingArea::set_longitude | ( | double | lon | ) |
int display::MapDrawingArea::set_zoom | ( | int | zoom | ) |
Sets zoom level.
zoom |
Definition at line 260 of file MapDrawingArea.cpp.
boost::signal<void (std::vector<std::unique_ptr<osm::Element> > const& elem)> display::MapDrawingArea::element_clicked |
This signal gets signalled when element is clicked.
The parameter is a vector of displayed elements that are in the vicinity of point clicked.
Definition at line 70 of file MapDrawingArea.h.
boost::signal<void (int)> display::MapDrawingArea::zoom_changed |
This signal gets signalled when zoom level is changed.
The parameter is new zoom level.
Definition at line 65 of file MapDrawingArea.h.