Skip to content

Commit 41a3280

Browse files
committed
Add distance item
1 parent 112b9f1 commit 41a3280

File tree

2 files changed

+21
-1
lines changed

2 files changed

+21
-1
lines changed

src/app/qgsmaptooloffsetcurve.cpp

+16-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
#include "qgsvectorlayer.h"
2121
#include <QMouseEvent>
2222

23-
QgsMapToolOffsetCurve::QgsMapToolOffsetCurve( QgsMapCanvas* canvas ): QgsMapToolEdit( canvas ), mRubberBand( 0 ), mOriginalGeometry( 0 ), mGeometryModified( false )
23+
QgsMapToolOffsetCurve::QgsMapToolOffsetCurve( QgsMapCanvas* canvas ): QgsMapToolEdit( canvas ), mRubberBand( 0 ), mOriginalGeometry( 0 ), mGeometryModified( false ), mDistanceItem( 0 )
2424
{
2525
}
2626

@@ -182,6 +182,21 @@ QgsGeometry* QgsMapToolOffsetCurve::createOriginGeometry( QgsVectorLayer* vl, co
182182
}
183183
}
184184

185+
QGraphicsProxyWidget* QgsMapToolOffsetCurve::createDistanceItem()
186+
{
187+
if ( !mCanvas )
188+
{
189+
return 0;
190+
}
191+
192+
QGraphicsProxyWidget* pw = new QGraphicsProxyWidget();
193+
//Embed double spin box
194+
QDoubleSpinBox* sb = new QDoubleSpinBox();
195+
pw->setWidget( sb );
196+
197+
return pw;
198+
}
199+
185200
void QgsMapToolOffsetCurve::deleteRubberBandAndGeometry()
186201
{
187202
delete mRubberBand;

src/app/qgsmaptooloffsetcurve.h

+5
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020
#include "qgsgeometry.h"
2121
#include "qgssnapper.h"
2222

23+
class QGraphicsProxyWidget;
24+
2325
class QgsMapToolOffsetCurve: public QgsMapToolEdit
2426
{
2527
public:
@@ -44,10 +46,13 @@ class QgsMapToolOffsetCurve: public QgsMapToolEdit
4446
QString mSourceLayerId;
4547
/**Internal flag to distinguish move from click*/
4648
bool mGeometryModified;
49+
/**Shows current distance value and allows numerical editing*/
50+
QGraphicsProxyWidget* mDistanceItem;
4751

4852

4953
void deleteRubberBandAndGeometry();
5054
QgsGeometry* createOriginGeometry( QgsVectorLayer* vl, const QgsSnappingResult& sr, QgsFeature& snappedFeature );
55+
QGraphicsProxyWidget* createDistanceItem();
5156
};
5257

5358
#endif // QGSMAPTOOLOFFSETCURVE_H

0 commit comments

Comments
 (0)