struct point cursor_pnt, *pnt=&cursor_pnt;
enum projection pro;
int border=16;
+ int route_path_set=0;
if (! this_->ready)
return;
navit_vehicle_draw(this_, nv, NULL);
return;
}
+ if (this_->route)
+ route_path_set=route_get_path_set(this_->route);
if (this_->tracking && this_->tracking_flag) {
if (tracking_update(this_->tracking, &nv->coord, nv->dir)) {
if (this_->route && nv->update_curr == 1)
route_set_position(this_->route, &cursor_pc);
}
}
-
transform(this_->trans, pro, &nv->coord, &cursor_pnt, 1, 0);
if (!transform_within_border(this_->trans, &cursor_pnt, border)) {
if (!this_->cursor_flag)
navit_set_center_cursor(this_, &nv->coord, nv->dir, 50, 80);
pnt=NULL;
}
+ if (pnt && this_->route && !route_path_set && route_get_path_set(this_->route))
+ navit_draw(this_);
if (nv->follow_curr > 1)
nv->follow_curr--;
else
}
int
+route_get_path_set(struct route *this)
+{
+ return this->path2 != NULL;
+}
+
+int
route_set_speed(struct route *this, enum item_type type, int value)
{
if (type < route_item_first || type > route_item_last) {
struct route_info *route_get_pos(struct route *this);
struct route_info *route_get_dst(struct route *this);
int *route_get_speedlist(struct route *this);
+int route_get_path_set(struct route *this);
int route_set_speed(struct route *this, enum item_type type, int value);
int route_contains(struct route *this, struct item *item);
void route_set_position(struct route *this, struct pcoord *pos);