QGIS API Documentation 3.99.0-Master (7d2ca374f2d)
Loading...
Searching...
No Matches
qgslayoutpolylinewidget.h
Go to the documentation of this file.
1/***************************************************************************
2 qgslayoutpolylinewidget.h
3 begin : March 2016
4 copyright : (C) 2016 Paul Blottiere, Oslandia
5 email : paul dot blottiere at oslandia dot com
6 ***************************************************************************/
7
8/***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17#ifndef QGSLAYOUTPOLYLINEWIDGET_H
18#define QGSLAYOUTPOLYLINEWIDGET_H
19
20// We don't want to expose this in the public API
21
22#include "ui_qgslayoutpolylinewidgetbase.h"
23
24#include "qgis_gui.h"
26#include "qgslayoutitemwidget.h"
27
28#define SIP_NO_FILE
29
37class GUI_EXPORT QgsLayoutPolylineWidget : public QgsLayoutItemBaseWidget, private Ui::QgsLayoutPolylineWidgetBase
38{
39 Q_OBJECT
40 public:
43 void setMasterLayout( QgsMasterLayoutInterface *masterLayout ) override;
44
45 protected:
46 bool setNewItem( QgsLayoutItem *item ) override;
47
48 private:
49 QPointer<QgsLayoutItemPolyline> mPolyline;
50 QgsLayoutItemPropertiesWidget *mItemPropertiesWidget = nullptr;
51
52 void enableStartSvgInputElements( bool enable );
53 void enableEndSvgInputElements( bool enable );
54
55 private slots:
56
58 void setGuiElementValues();
59
60 void symbolChanged();
61 void arrowStrokeWidthChanged( double d );
62 void arrowHeadWidthChanged( double d );
63 void arrowHeadFillColorChanged( const QColor &newColor );
64 void arrowHeadStrokeColorChanged( const QColor &newColor );
65 void startArrowHeadToggled( bool toggled );
66 void endArrowHeadToggled( bool toggled );
67 void startNoMarkerToggled( bool toggled );
68 void endNoMarkerToggled( bool toggled );
69 void startSvgMarkerToggled( bool toggled );
70 void endSvgMarkerToggled( bool toggled );
71 void mStartMarkerLineEdit_textChanged( const QString &text );
72 void mEndMarkerLineEdit_textChanged( const QString &text );
73 void mStartMarkerToolButton_clicked();
74 void mEndMarkerToolButton_clicked();
75};
76
77#endif // QGSLAYOUTPOLYLINEWIDGET_H
virtual bool setNewItem(QgsLayoutItem *item)
Attempts to update the widget to show the properties for the specified item.
virtual void setMasterLayout(QgsMasterLayoutInterface *masterLayout)
Sets the master layout associated with the item.
QgsLayoutItemBaseWidget(QWidget *parent SIP_TRANSFERTHIS, QgsLayoutObject *layoutObject)
Constructor for QgsLayoutItemBaseWidget, linked with the specified layoutObject.
Layout item for node based polyline shapes.
A widget for controlling the common properties of layout items (e.g.
Base class for graphical items within a QgsLayout.
QgsLayoutPolylineWidget(QgsLayoutItemPolyline *polyline)
constructor
Interface for master layout type objects, such as print layouts and reports.