mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2025-02-06 21:54:15 +01:00
GCS - OPMap - create doubleclick signal on the home item
This commit is contained in:
parent
88a089804b
commit
3cf4676aef
@ -94,17 +94,24 @@ namespace mapcontrol
|
|||||||
coord=map->FromLocalToLatLng(this->pos().x(),this->pos().y());
|
coord=map->FromLocalToLatLng(this->pos().x(),this->pos().y());
|
||||||
isDragging=false;
|
isDragging=false;
|
||||||
|
|
||||||
emit homePositionChanged(coord);
|
emit homePositionChanged(coord,Altitude());
|
||||||
}
|
}
|
||||||
QGraphicsItem::mouseReleaseEvent(event);
|
QGraphicsItem::mouseReleaseEvent(event);
|
||||||
}
|
}
|
||||||
|
void HomeItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event)
|
||||||
|
{
|
||||||
|
if(event->button()==Qt::LeftButton)
|
||||||
|
{
|
||||||
|
emit homedoubleclick(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
void HomeItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
|
void HomeItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(isDragging)
|
if(isDragging)
|
||||||
{
|
{
|
||||||
coord=map->FromLocalToLatLng(this->pos().x(),this->pos().y());
|
coord=map->FromLocalToLatLng(this->pos().x(),this->pos().y());
|
||||||
emit homePositionChanged(coord);
|
emit homePositionChanged(coord,Altitude());
|
||||||
}
|
}
|
||||||
QGraphicsItem::mouseMoveEvent(event);
|
QGraphicsItem::mouseMoveEvent(event);
|
||||||
}
|
}
|
||||||
|
@ -53,10 +53,10 @@ namespace mapcontrol
|
|||||||
int SafeArea()const{return safearea;}
|
int SafeArea()const{return safearea;}
|
||||||
void SetSafeArea(int const& value){safearea=value;}
|
void SetSafeArea(int const& value){safearea=value;}
|
||||||
bool safe;
|
bool safe;
|
||||||
void SetCoord(internals::PointLatLng const& value){emit homePositionChanged(value);coord=value;}
|
void SetCoord(internals::PointLatLng const& value){coord=value;emit homePositionChanged(value,Altitude());}
|
||||||
internals::PointLatLng Coord()const{return coord;}
|
internals::PointLatLng Coord()const{return coord;}
|
||||||
void SetAltitude(int const& value){altitude=value;}
|
void SetAltitude(float const& value){altitude=value;emit homePositionChanged(Coord(),Altitude());}
|
||||||
int Altitude()const{return altitude;}
|
float Altitude()const{return altitude;}
|
||||||
private:
|
private:
|
||||||
MapGraphicItem* map;
|
MapGraphicItem* map;
|
||||||
OPMapWidget* mapwidget;
|
OPMapWidget* mapwidget;
|
||||||
@ -66,16 +66,18 @@ namespace mapcontrol
|
|||||||
bool showsafearea;
|
bool showsafearea;
|
||||||
int safearea;
|
int safearea;
|
||||||
int localsafearea;
|
int localsafearea;
|
||||||
int altitude;
|
float altitude;
|
||||||
bool isDragging;
|
bool isDragging;
|
||||||
protected:
|
protected:
|
||||||
void mouseMoveEvent ( QGraphicsSceneMouseEvent * event );
|
void mouseMoveEvent ( QGraphicsSceneMouseEvent * event );
|
||||||
void mousePressEvent ( QGraphicsSceneMouseEvent * event );
|
void mousePressEvent ( QGraphicsSceneMouseEvent * event );
|
||||||
void mouseReleaseEvent ( QGraphicsSceneMouseEvent * event );
|
void mouseReleaseEvent ( QGraphicsSceneMouseEvent * event );
|
||||||
|
void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event);
|
||||||
public slots:
|
public slots:
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void homePositionChanged(internals::PointLatLng coord);
|
void homePositionChanged(internals::PointLatLng coord,float);
|
||||||
|
void homedoubleclick(HomeItem* waypoint);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
#endif // HOMEITEM_H
|
#endif // HOMEITEM_H
|
||||||
|
Loading…
x
Reference in New Issue
Block a user