Public Member Functions | Data Fields | Protected Member Functions
display::MapDrawingArea Class Reference

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)

Detailed Description

Responsible for drawing data provided by DisplayProviders.

Definition at line 25 of file MapDrawingArea.h.


Constructor & Destructor Documentation

display::MapDrawingArea::MapDrawingArea ( BaseObjectType *  cobject,
Glib::RefPtr< Gtk::Builder > const &   
)

Constructs a MapDrawingArea.

Parameters:
cobject

Definition at line 17 of file MapDrawingArea.cpp.

display::MapDrawingArea::~MapDrawingArea ( ) [virtual]

Definition at line 45 of file MapDrawingArea.cpp.


Member Function Documentation

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.

Parameters:
priority
dp

Definition at line 34 of file MapDrawingArea.cpp.

int display::MapDrawingArea::get_zoom ( )
Returns:
current zoom level

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)

Sets latitude to look at.

Parameters:
lat

Definition at line 268 of file MapDrawingArea.cpp.

void display::MapDrawingArea::set_longitude ( double  lon)

Sets longitude to look at.

Parameters:
lon

Definition at line 273 of file MapDrawingArea.cpp.

int display::MapDrawingArea::set_zoom ( int  zoom)

Sets zoom level.

Parameters:
zoom
Returns:
zoom level afterwards

Definition at line 260 of file MapDrawingArea.cpp.


Field Documentation

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.


The documentation for this class was generated from the following files:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines